1

スクロールビューがあるビューがあります。タッチの開始、移動などのメソッドを検出したい。これらのメソッドを使用しました。これらのメソッドは、スクロールビューの外部では正常に機能しますが、スクロールビューの内部では機能しません。理由を教えてください。が機能しておらず、解決策は何ですか。

4

2 に答える 2

1

UIViewを(MyUIViewとして)サブクラス化し、タッチデリゲートを実装する必要があります。

次に、MyUIViewをUIScrollViewに追加します

例えば:

   @interface MyUIView : UIViewController {

   }
   @end

  @implementation MyUIView

      //implement touch delegate here
   }

メインビューにこの行を追加します

MyUIView *myUIView = [[MyUIView alloc] init];
myUIView.userIntarctionEnabled = YES;
[yourScrollView addSubView:myUIView.view];

:サブクラス 化の代わりにUIGusturesを使用できます。UIGestureRecognizerクラスは、iOSデバイスで一般的なさまざまなUIジェスチャの検出と応答を支援するために使用できます

于 2012-10-22T10:57:42.503 に答える
0

convertPoint: toView:メソッドを使用 します。

CGPoint *point = [yourView convertPoint:touchPoint toView:yourScrollView];
于 2012-10-22T11:05:18.497 に答える