Tworzę jedną aplikację na iPhone'a, w której muszę wyświetlać kilka zdjęć wewnątrz UIScrollView, po lewej i prawej stronie będą dwa przyciski, które użytkownik może kliknąć, a na ekranie pojawi się następny lub poprzednie zdjęcie. Również na dole znajduje się jeden przycisk, kiedy użytkownik kliknie na ten przycisk, pokaże obraz, który wybrałeś w scrollview. Chciałbym wiedzieć, jak wyświetlić wiele obrazów w tym przewijanym widoku i podczas wybierania dolnego przycisku, jak znajdź, który obraz był wewnątrz przewijania.Jak wyświetlać wiele obrazów wewnątrz UIScrollView w iOS
Odpowiedz
przykład z danielbeard.wordpress .com
W przypadku, gdy nazwy obrazów nie są tylko liczby:
UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
[scrollView setPagingEnabled:YES];
[scrollView setAlwaysBounceVertical:NO];
NSArray *imagesArray = [NSArray arrayWithObjects:@"img1.png", @"img2.png", @"img3.png", nil];
for (int i = 0; i < [imagesArray count]; i++)
{
CGFloat xOrigin = i * scrollView.frame.size.width;
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(xOrigin, 0, scrollView.frame.size.width, scrollView.frame.size.height)];
[imageView setImage:[UIImage imageNamed:[imagesArray objectAtIndex:i]]];
[imageView setContentMode:UIViewContentModeScaleAspectFit];
[scrollView addSubview:imageView];
}
[scrollView setContentSize:CGSizeMake(scrollView.frame.size.width * [imagesArray count], scrollView.frame.size.height)];
Zrobiłem to i działa dobrze w trybie portretu. ale jak to zrobić w trybie poziomym, jeśli mam inną tablicę obrazów? plz dają pewne sugestie na ten temat. – Mak13
Powinieneś wykryć, kiedy ekran jest obracany do trybu poziomego. Po wykryciu zmień nazwy obrazów w tablicy images, a następnie usuń stary scrollview i narysuj nowy z nową tablicą obrazów. – tnylee
Zrobiłem tylko ten sam dzień. w każdym razie dzięki za odpowiedź. – Mak13
Apple.developerPhotoScroller demonstruje użycie wbudowanych UIScrollViews i CATiledLayer aby stworzyć bogate doświadczenie użytkownika do wyświetlania i Stronicowanie zdjęć, które mogą być indywidualnie cukrem i powiększony.
CATiledLayer służy do zwiększania wydajności stronicowania, panoramowania i powiększania obrazów o wysokiej rozdzielczości lub dużych zestawów zdjęć.
mają patrzeć na ten przykład: http://danielbeard.wordpress.com/2012/09/17/adding-a-uiscrollview-to-a-uiview-ios/
Ohh ... ten całkowicie rozwiązał problem i +1 za to! –
ty po prostu pierwszy utworzyć nowy widok na starcie i obrazu i przypisać tag wszystkie widoki jak 1000 lub 100 i przyrost o wartości znacznika, a następnie dodać ten pogląd do Scrollview i dwa przyciski do lewej i prawej ruchu i uczynić swoje działania wylotowe i dodać wszystkie widoki Scrollview sub do zmienny tablicy jak to
indexStart=100;
UIView *AddView=[[UIView alloc]initWithFrame:CGRectMake(55, 0, 100, 100)];
AddView.tag=indexStart;
btnTap.tag=indexStart;
UIImageView *imgview=[[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 100, 100)];
[AddView addSubview:imgview];
imgview.image=image;
imgview.tag=1000;
[ScrollView addSubview:AddView];
[imgArray addObject:AddView];
użyć pętli to zrobić i na lewym i prawym przyciskiem użyć tego kod iw tym kodzie editImgeView jest widokiem obrazu i nbetween lewy i prawy przycisk gdzie pokazać obraz po prostu prosty indexstart ++ lub - jeśli użytkownik wybrać przycisk prawą lub lewą
for (int index = 0; index < [imgAddArrayAfter count]; index ++) {
NSLog(@"index %d",index);
UIView *vc=[imgArray objectAtIndex:index];
NSLog(@"view tag %d",vc.tag);
if(vc.tag == indexStart)
{
UIImageView *modalView=(UIImageView *) [vc viewWithTag:1000];
editImgeView.image=modalView.image;
}
}
Mam nadzieję, że rozumiesz ;-)
- (void)viewDidLoad
{
[super viewDidLoad];
UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
scrollView.contentSize = CGSizeMake(320, 465);
[scrollView setScrollEnabled:YES];
[scrollView setPagingEnabled:YES];
[scrollView setAlwaysBounceVertical:NO];
[self.view addSubview:scrollView];
NSMutableArray *arrImage = [NSMutableArray arrayWithObjects:@"food1.jpeg", @"food2.jpeg", @"food3.jpeg",@"food4.jpeg", @"food5.jpeg", @"food6.jpeg",@"food7.jpeg", @"food8.jpeg", @"foo9.jpeg",@"food10.jpeg", @"food11.jpeg", @"food12.jpeg",@"food13.jpeg", @"food14.jpeg", @"food15.jpeg", @"food16.jpeg", nil];
for (int i = 0; i < [arrImage count]; i++)
{
CGFloat xOrigin = i * scrollView.frame.size.width;
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(xOrigin, 0, scrollView.frame.size.width, scrollView.frame.size.height)];
[imageView setImage:[UIImage imageNamed:[arrImage objectAtIndex:i]]];
[imageView setContentMode:UIViewContentModeScaleAspectFit];
[scrollView addSubview:imageView];
}
[scrollView setContentSize:CGSizeMake(scrollView.frame.size.width * [arrImage count], scrollView.frame.size.height)];
}
- 1. iOS UIWebView wewnątrz UIScrollView
- 2. UIScrollView w iOS 6
- 3. Jak powiększać UIScrollView wewnątrz UICollectionViewCell?
- 4. UIgestureRecognizer w widoku wewnątrz UIScrollView
- 5. UITableViewController wewnątrz UIScrollView z Horizontal Paging
- 6. Nie można wyświetlać obrazów w JSP
- 7. Jak poprawnie zastąpić obraz w UIImageView w UIScrollView na iOS
- 8. Zapisz wiele obrazów w Androidzie
- 9. ios UIScrollView mieć zły domyślny contentOffset - szybki
- 10. Ograniczenie odbicia dla UIScrollview w iOS
- 11. IOS: wybór UIScrollView lub UITableView
- 12. Obsługa dużych obrazów w iOS
- 13. UIScrollView zachowanie różni się systemów iOS 8
- 14. Wiele obrazów tła IE8
- 15. iOS: Autolayout powodujący brak przewijania UIScrollView
- 16. Jak wyświetlać treści HTML na UIWebView IOS
- 17. UIScrollView inside UIScrollView
- 18. Rysowanie obrazów wewnątrz niestandardowego ComboBox
- 19. UITableView Problemy z przewijaniem, gdy wewnątrz UIScrollView
- 20. Uiimageview wewnątrz widoku uiscrollview nie jest wyśrodkowany
- 21. Jak wyświetlać RTSP z kamery IP/CCTV w iOS
- 22. UIButton wewnątrz UIScrollView nie strzela z kranu
- 23. UIScrollView inside of UIScrollView?
- 24. Jak wyświetlać wskaźniki przesuwania UIWebView?
- 25. Prawidłowe powiększenie UIScrollView zawierającego wiele subviews
- 26. Page_ClientValidate() z wieloma ValidationGroups - jak wyświetlać wiele podsumowań jednocześnie?
- 27. Czy jQueryCycle może wyświetlać wiele obrazów jednocześnie, ale przesuwać je pojedynczo?
- 28. iOS UIScrollView anuluj dotyk Uibutton na przewijanie
- 29. Jak połączyć wiele obrazów w jeden obraz w systemie Android?
- 30. loop UIScrollView
co zrobiliście do tej pory –
Wydaje się, aby uzyskać bezpośredni kod? Czy to zrobiłeś i nad tym pracujesz? –