0

ズームしているときに問題が発生しました。次の UIImageView をズームすると、ズームインしている UIImageView の上に移動します。

コントローラーで呼び出す UIScrollView のサブクラスに UIImageView をロードします。ロード機能やスクロール機能もバッチリ

最初の問題は、ズームインすると、次の UIImageView がズームインしたものの上に移動することです。

だから私はScrollViewに入れたUIViewにすべてのUIImageViewを入れようとしましたが、同じことをします...

私が抱えている2番目の問題は、ズームインするとスクロールが機能しなくなることです。

- (UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView {
// Return the view that you want to zoom
NSLog(@"viewForZoomingInScrollView - current : %d",self.scrollPageControl.currentPage);
return [[[[self.productImageScrollView subviews]objectAtIndex:0] subviews]objectAtIndex:self.scrollPageControl.currentPage];
//return [[self.productImageScrollView subviews] objectAtIndex:0];
//return [self.productImageScrollView getSubViewsByPage:[NSNumber numberWithInteger:[self.scrollPageControl currentPage]]];

最初の戻り値は UIView の UIImageView を返します。2 番目の戻り値は UIView を返し、3 番目の戻り値は UIView を使用しない場合に UIImageView を返します。

私は同様の問題をたくさん見ましたが、私が試したものは何も助けませんでした... だから私はあなたに電話しています! よくわからない場合は、Ty に尋ねてください。

4

3 に答える 3

0

UIView *(おそらくcontentViewと呼ぶ)を作成して、すべてのUIImageViewをそのcontentViewのサブビューとして配置してみてください

次に、

- (UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView {
    return contentView;
}
于 2012-08-28T16:03:15.077 に答える
0

メソッドでそのビューを返していますか? それが重要な部分です...

スクロール ビューは、viewForZooming で返されたビューのみをスケーリングするため、画像の 1 つを返す場合、残りはスケーリングされません。順番に追加していると思いますので、ズームしたものが拡大すると、次のものは静止したままになり、現在のものの上に置かれます

すべての画像をビューに追加してから、viewForZoomingInScrollView で同じビューを返します。

于 2012-08-28T16:44:46.507 に答える