1

UIViewController があり、その上に UIImageView を配置し、次に UIScrollView を配置します。

UIScrollView のタッチは問題なく処理できますが、UIViewController の特定のタッチを処理したいと考えています。

5 秒間保持される UIScrollView に触れるだけで済みます (この部分は正常に動作します)。UIViewController に渡したいものはそれ以下です。

UISCrollView では、次のように呼び出します。

- (void) touchesBegan: (NSSet *) touches withEvent: (UIEvent *) event
{
// some custom code to process a specific touch.

// all other touches
    [super touchesBegan: touches withEvent: event];
}

UIScrollView から一番下の UIViewController にタッチを渡す方法はありますか、または UIViewController への参照を UIScrollView に渡す必要がありますか?

4

2 に答える 2

1

解決しました!

追加する必要があります:

[self.nextResponder touchesEnded: touches withEvent:event]; 

一番上のコントローラに。

自分にありがとう!

于 2010-08-14T02:42:33.203 に答える
0

Apple Documentation の touchesBegan の説明では、次のように説明されています。

メッセージを次のレスポンダーに転送するには、メッセージを super (スーパークラスの実装) に送信します。メッセージを次の応答者に直接送信しないでください。例えば、

[super touchesBegan:touches withEvent:event];

super (一般的な使用パターン) を呼び出さずにこのメソッドをオーバーライドする場合は、スタブ (空の) 実装としてのみであれば、タッチ イベントを処理する他のメソッドもオーバーライドする必要があります。

于 2012-08-24T05:21:49.487 に答える