UIScrollView
サイズは(320,160)です。UIImageView
サイズ (213,160) のものをいくつか追加しています。54 (x) から始まる最初のUImageView
ものなど、それぞれの間に 5.0 のスペースを追加しましたUIImageView
。pagingEnable
in IB
& inも有効にしましたcoding
。私の問題は、そのプロパティに従って適切に機能していないことです! スクロールすると、代わりUIImageViews
に各シングルに表示されるはずです。スクリーンショットを参照してください。出力スクリーンショットを参照してくださいpage
どこが間違っていますか?<
画像を表示する(前)&>
(次)の機能もあります。昨日、1 つの質問をしましたが、それは受け入れられましたが、私の要件はほとんど変更されておらず、解決策にはなりません。私の質問を参照してください。
設定しなければならない特別なプロパティや、実装すべきロジックはありますか? 私がチェックして試したすべての例ですが、私の要件は特別なものであることがわかりました。指さして!ありがとう。
編集:
- (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];
}
}