0

画像ビューをサブビューとして追加したスクロールビューがあります。スクロールビューのコンテンツサイズは、イメージビューのサイズ (幅と高さ) と同じです。スクロールビューの外に 2 つのボタンがあります。それらのいずれかをクリックすると、小さな長方形のビューがサブビューとしてイメージビューに追加されます。この四角形のビューは、追加した後、ユーザーがイメージ ビューの任意の場所にドラッグできます。

スクロールビューをピンチしてズームするまで、これは正常に機能します。このviewForZoomingInScrollView:メソッドでは、イメージビューを返し、ズームは正常に機能します。しかし、ズームされたビューでは、長方形のビューの周りをドラッグしようとすると、動きません。パン ジェスチャが認識されなくなりました。なぜこれが起こっているのですか?

ありがとう

ヘタル

4

2 に答える 2

2

最後のコメントに続いて、次のことを試すことをお勧めします。

viewDidLoadメソッドにこれを追加します:

for (UIGestureRecognizer *gr in self.scrollView.gestureRecognizers) {
    if ([gr isKindOfClass:[UIPanGestureRecognizer class]])
    {
        [gr requireGestureRecognizerToFail:self.dragGR];
    }
}

dragView はあなたのrectangleViewです。

上記が機能するために次のことはおそらく必要ありませんが、とにかくビュー階層をクリーンアップすることをお勧めします。

同じフレームを持つ画像ビューのスーパービューとしてプレーン UIView を追加し、その新しいビューのサブビューとして長方形ビューを追加します。viewForZoomingInScrollView:その新しいビューをお返しします。コメントで言ったように、サブビューを UIImageViews に追加することは良い習慣とは考えられません。しかし、多分それは私の意見です:)

于 2012-10-25T19:11:29.457 に答える