UIScrollView
には3つの異なるページが読み込まれています。
ページをズームインして元のサイズにズームアウトすると、ページングが無効になっているかのように、アプリケーション間でページ間をスクロールできなくなります。元のサイズにズームアウトしたときにページングを再度有効にするにはどうすればよいですか(スケール== 1)?
は、これは私のコード
ズーム後にUIScrollViewでページングを有効にする
- (void)viewDidLoad
{
[ScView setMaximumZoomScale : 2.0f];
[ScView setMinimumZoomScale : 1.0f];
ScView.contentSize = CGSizeMake(1024*3, 1.0);
ScView.pagingEnabled = YES;
ScView.clipsToBounds = YES;
ScView.delegate = self;
ScView.showsHorizontalScrollIndicator = NO;
ScView.showsVerticalScrollIndicator = NO;
[super viewDidLoad];
[self returnImages];
}
-(void)returnImages{
for (pageNumber = 1; pageNumber <= 3; pageNumber++) {
imagen = [[UIImageView alloc] initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.png",pageNumber]]];
imagen.frame = CGRectMake((pageNumber-1)*1024, 0, 1024, 768);
[ScView addSubview:imagen];
}
}
//
- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView{
return ScView;
// return [imagen initWithImage:[UIImage imageNamed:[NSString stringWithFormat:@"%d.png",pageNumber]]];
}
- (void)scrollViewWillBeginZooming:(UIScrollView *)myScrollView withView:(UIView *)view
{
NSLog(@"Scroll Will Begin");
ScView.scrollEnabled = YES;
}
- (void)scrollViewDidEndZooming:(UIScrollView *)myScrollView withView:(UIView *)view atScale:(float)scale
{
if(scale == 1)
{
ScView.scrollEnabled = YES;
ScView.pagingEnabled = YES;
[self returnImages];
NSLog(@"Scrolol will end");
//ScView.maximumZoomScale = 2.0f;
// [super viewDidLoad];
[self returnImages];
}
}
任意のアイデアが高く評価されます。..
のですか?あなたのプロジェクトコード全体をダウンロードしましたが、あなたのストーリーボードは単なるView Controllerだと気付きました。 – user2872856
これは私の質問です:http://stackoverflow.com/questions/34449359/zoom-images-in-paged-uiscrollview – user2872856
問題を解決しました。あなたのコードをありがとう。 – user2872856