2009-08-21 2 views
0

これは難しいことです。非常に大きなボタンの上に小さなボタンがあります。その大きなボタンの小さなボタンが押されると、小さなボタンが何かをします。しかし、大きな人は何もしません。もちろん。しかし、今私は、小さなボタンがタップされているかどうかにかかわらず、大きなボタンも何かをしたい。小さなボタンはすべてのタッチイベントをその大きなボタンに転送する必要があります。それを行う最も簡単な方法は何でしょうか?UIControlはすべてのタッチイベントをレスポンダチェーンの次のオブジェクトに渡すことができますか?

私はUIViewについて知っていますが、UIControlにはUIViewとは異なる独自のタッチ操作方法があります。私は何だろうことのUIViewControllerで両方のボタンを持っているけれどもあなたは、大きなボタンが小さいボタンからメッセージを受信できるようにプロトコルを実装することができます

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

答えて

0

this postは、タッチイベント。それはしばらくの間、仕事をやめた。それを見直すと、彼は3.0サポートのために更新されたように見えるので、あなたのために働くかもしれません。注意しなければならないのは、出荷用アプリでは合法ではない可能性があるということです。

もっと簡単な方法は、大きなボタンがタップされて公開されたときに、作業を行う方法を打ち消すことです(bigButtonWorkとしましょう)。次に、大きなボタンタップハンドラがこのルーチンを呼び出します。小さなボタンをタップすると、そのハンドラの中で自分のことをするか、代わりにbigButtonWorkに電話をかけることができます。

しかし、私は実際にプッシュされた大きなボタン(ハイライトと状態の変更が完了している)をシミュレートして、合成されたイベントルートに行かなければならないと思っています。

0

、小さなボタンがありますUIViewのではややこのようになります。そのUIViewControllerにUIViewControllerがクリックされた(セレクタまたはプロトコルを介して)ことを通知し、UIViewControllerがそれに応じて大きなボタンを更新することができるようになりました....プロトコルの詳細はこちらhttp://developer.apple.com/documentation/Cocoa/Conceptual/ObjectiveC/Articles/ocProtocols.html

関連する問題