ruimte tussen page control discussie in Ontwikkelen voor iOS forum; ( verdwijnt na registratie ) Hee, Ik maak voor mijn app een foto galerie die net ongeveer net zo werkt als de foto's app van Apple zelf. Het werkt goed, ...
|
Registreer | FAQ | Ledenlijst | Kalender | Zoeken | Berichten van vandaag | Markeer forums als gelezen |
#1
|
|||
|
|||
ruimte tussen page control
Hee,
Ik maak voor mijn app een foto galerie die net ongeveer net zo werkt als de foto's app van Apple zelf. Het werkt goed, behalve dat ik graag een kleine zwarte ruimte van zo'n 20 pixels tussen de foto's zou willen net zoals in de foto's app van Apple zelf. Ik heb al geprobeerd mijn code aan te passen, maar met niet zo veel succes Dit is mijn code: Code:
- (void)setupPage { scrollView.delegate = self; [self.scrollView setBackgroundColor:[UIColor clearColor]]; [scrollView setCanCancelContentTouches:NO]; scrollView.indicatorStyle = UIScrollViewIndicatorStyleWhite; scrollView.clipsToBounds = YES; scrollView.scrollEnabled = YES; scrollView.pagingEnabled = YES; NSUInteger nimages = 0; CGFloat cx = 0; for (; ; nimages++) { NSString *imageName = [NSString stringWithFormat:@"foto%d.png", (nimages + 1)]; UIImage *image = [UIImage imageNamed:imageName]; if (image == nil) { break; } UIImageView *imageView = [[UIImageView alloc] initWithImage:image]; CGRect rect = imageView.frame; rect.size.height = image.size.height; rect.size.width = image.size.width; rect.origin.x = ((scrollView.frame.size.width - image.size.width) / 2) + cx; rect.origin.y = ((scrollView.frame.size.height - image.size.height) / 2); imageView.frame = rect; [scrollView addSubview:imageView]; [imageView release]; cx += scrollView.frame.size.width; } self.pageControl.numberOfPages = nimages; [scrollView setContentSize:CGSizeMake(cx, [scrollView bounds].size.height)]; } Code:
- (void)scrollViewDidScroll:(UIScrollView *)_scrollView { if (pageControlIsChangingPage) { return; } CGFloat pageWidth = _scrollView.frame.size.width ; int page = floor((_scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1; pageControl.currentPage = page; } Code:
- (void)scrollViewDidEndDecelerating:(UIScrollView *)_scrollView { pageControlIsChangingPage = NO; } Code:
- (IBAction)changePage:(id)sender { CGRect frame = scrollView.frame; frame.origin.x = frame.size.width * pageControl.currentPage; frame.origin.y = 0; [scrollView scrollRectToVisible:frame animated:YES]; pageControlIsChangingPage = YES; } |
|
|
Gesponsorde links (verdwijnt na registratie)
|
#2
|
|||
|
|||
Apple heeft net de Broncode van iOS 4.1 open gezet misschien kun je het daar in vinden?
|
#3
|
|||
|
|||
Heb je een link, want ik kan het niet vinden op het developer center en heb een paid developer account.
|
#4
|
||||
|
||||
Je kan in die delegate methods van UIScrollView een contentOffset meegegeven aan je scrollView.frame. Tijdens het scrollen wordt er dan extra ruimte gecreëerd.
Of je kan een UIView aanmaken, die zwart is (en groter is dan je imageView) en dan imageView als subview plaatsen. Je kan dan bounds terug vragen van de imageView om de size te krijgen en dan +20 pixels. Maar lijkt me niet de beste oplossing.
__________________
iPod touch v3 - iPod Nano 2011 - iMac 27" - iPhone 4S - iPad 2 - MacBook Air 11,6" |
#5
|
||||
|
||||
Ik wil mezelf even verbeteren hier, gezien ik zelf ook hier mee bezig ben geweest.
Om ruimte van 20 pixels tussen de foto's te krijgen doe je het volgende: Code:
// Je wil eerst de grootte van het scherm weten CGRect extraFrame = [[UIScreen mainScreen] bounds]; // Je laat de origin van het frame 10 points naar links beginnen extraFrame.origin.x -= 10; // Je voegt 20 points toe in de totale breedte van het frame extraFrame.size.width += 20; // Daarna gebruik je een initializer om de frame grootte toe te voegen aan je UIScrollview scrollView = [[UIScrollView alloc] initWithFrame:extraFrame]; |
#6
|
|||
|
|||
Bedankt voor je reactie, ga het morgen meteen toepassen!
|
Er zijn 1 actieve gebruikers die momenteel deze discussie bekijken (0 leden en 1 gasten) |
|
Discussietools | |
Weergave | |
Soortgelijke discussies |
||||
Discussie | Auteur | Forum | Reacties | Laatste bericht |
Springjumps page icoontjes | Kenzo2010 | Jailbreak apps en thema's | 5 | 12-08-12 22:50 |
Lege details page | vicz | Jailbreak apps en thema's | 2 | 27-05-10 19:50 |
ruimte tussen metalen rand zwarte 3G | MsG | iPhone algemeen | 4 | 30-06-09 19:22 |
ruimte tussen iconen | mcbbvb | Archief | 2 | 01-06-09 17:18 |
|
|