iOS : Comment faire le bon d'échange en UIScrollView?

J'ai un UIScrollView de taille (320,160). Je suis en ajoutant quelques UIImageView en elle, qui sont de taille (213,160). La première UImageView à partir de 54 (x) et ainsi de suite, j'ai ajouté un espace de 5,0 entre chaque UIImageView. J'ai aussi activé pagingEnable dans IB & dans coding. Ce que mon problème est que sa ne fonctionne pas correctement, comme par sa propriété! Quand je scroll, il doit me montrer UIImageViews dans chaque page au lieu de cela il me montre quelque chose comme voir la capture d'écran je veux quelque chose de sortie de cette voir la sortie capture d'écran

Où je fais mal? J'ai également avoir la fonction de< (précédent) & > (à côté) il y a de montrer des images. J'ai posé une question hier j'ai accepté cependant mon exigence est peu de changement et il ne deviendra pas ma solution. voir ma question.

Est-il une propriété particulière que j'ai pour définir, ou d'un peu de logique, je devrais le mettre en œuvre? Tous les exemples que j'ai vérifié et essayé, mais je trouve que mon exigence est certains. Point de moi! Merci.

ÉDITÉ:

- (void) setImages
{
CGFloat contentOffset = 0.0f;
for (int i=0; i<[arrImgUrls count]; i++) 
{
CGRect imageViewFrame = CGRectMake(contentOffset, 0.0f, 213, scrollImages.frame.size.height);
AsyncImageView *asyncImageView = [[AsyncImageView alloc] initWithFrame:imageViewFrame];
[asyncImageView.layer setMasksToBounds:YES];
NSString *urlImage = [arrImgUrls objectAtIndex:i];
NSURL *url = [NSURL URLWithString:urlImage];
[asyncImageView loadImageFromURL:url];
[scrollImages addSubview:asyncImageView];
contentOffset += asyncImageView.frame.size.width+increment;
[asyncImageView release];
}
scrollImages.contentSize = CGSizeMake([arrImgUrls count] * scrollImages.frame.size.width, scrollImages.frame.size.height);
scrollImages.pagingEnabled = YES;
scrollImages.clipsToBounds = NO;
}
-(IBAction)prevImage:(id)sender
{    
_currentImage--;
[btnNext setEnabled:YES];
if (_currentImage==0)
{
[btnPrev setEnabled:NO];
[scrollImages setContentOffset:CGPointMake((_currentImage*imageWidth), 0) animated:YES];
return;
}
NSLog(@"previous:mult %d inc %d current %d",_currentImage*imageWidth,increment*_currentImage,_currentImage);
int nextImage=_currentImage+2;
[scrollImages setContentOffset:CGPointMake((((_currentImage*imageWidth)-(increment*_currentImage)))+(nextImage*increment), 0) animated:YES];
}
-(IBAction)nextImage:(id)sender
{    
_currentImage++;
NSLog(@"next:mult %d inc %d current %d",_currentImage*imageWidth,increment*_currentImage,_currentImage);
[scrollImages setContentOffset:CGPointMake((_currentImage*imageWidth)+(increment*_currentImage), 0) animated:YES];
[btnPrev setEnabled:YES];
if (_imageCount-1 == _currentImage)
{
[btnNext setEnabled:NO];
}
}
  • Ne pas faire défiler la vue de toute la pagination (mais seulement défilement normal) ou est votre problème que vous avez les images ne s'affichent pas dans le milieu lors du défilement/pagination s'arrête?
  • Oui @Kai, exactement. Quand j'ai faites défiler les images ne s'affichent pas dans le milieu.
InformationsquelleAutor Hemang | 2012-10-05