2012-01-12 6 views
2

重複しますが、私はSO今夜の検索私の問題への正確な答えを見つけることができませんでした...おそらくスーパーにUIScrollViewのからのパスをタッチ(UIButton)

私はUIScrollViewが含まれているUIButtonを持っているので、ボタンスーパービューです。

UIScrollViewサブビューからUIButtonスーパービューにシングルタップイベントを渡し、ユーザーがボタンを直接タップした場合と同じようにUIButtonを処理するだけです。

スクロールビューのuserInteractionEnabledプロパティをNOに設定すると、ユーザーがスクロールできるコンテンツがあるため、私には機能しません。そうすることで、スクロール表示の目的が無効になります。

これは可能ですか?ありがとう!

答えて

2

huoxinbirdのように、間違いなくそのようなあなたの意見を掲げることは間違いありません。

これについて固執している場合は、UITapGestureRecognizerを使用してボタンのターゲットとセレクタを呼び出すことができます。

ボタンのハイライトなどを含める場合は、UITapGestureRecognizerをサブクラス化し、ボタンにtouchesEndedを転送する必要があります。

+0

UITapGestureRecognizerがトリックを行いました!ありがとう! –

0

通常、スクロールビューをボタン内に配置しません。スクロールビューのスーパービューとしてUIViewを使用することを検討してください。また、ユースケースについて詳しく教えてください。なぜこのように設計しなければならないのか理解できます。

1

タッチでタッチが始まったscrollviewのサブクラスを作成し、また、uibutton(あなたのスーパー)をサブクラス化して扱う

-(BOOL)touchesShouldBegin:(NSSet *)touches withEvent:(UIEvent *)event inContentView:(UIView *)view 
{ 
return YES; 
} 

をオーバーライドします。

+0

まだ触れ始めていないが動作している;( – Abha

関連する問題