2017-04-10 7 views
2

メイン/ UIスレッドのボタンをクリックするなど、UIeventsでリッスンするにはどうしてですか?各UIのコールバック(onClickListenerなど)で直接やり取りする必要はありませんか?MainThread(UIスレッド)のイベントをリッスンし、イベントをトリガーするビュー

は、私はちょうど、私の周り掘ってきた、それはUIのイベントから発射任意のものを聞きたいが、私は唯一の投稿メッセージ別のスレッドからUIスレッドには、私がしたいことがちょうどある何かを見つけます例えば、ボタンがクリックされたとき、私はこれが重複としてマークされます場合は、罰金になります(これはすでに求められることができたと仮定しますが、場合、関連記事を提供してくださいよ

findViewById(R.id.button_1).setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

      // some button click stuffs here 
     } 
    }); 

    // this is where I want to listen from ui events (e.g click), 
    // and determine what type of view that triggered that event 
    // or how to get the actual view object that triggered it 

、UIスレッドにを聞きますそこに/あります)、私は "メインスレッドを聞く"のような何かを検索しようとするたびに、私はいくつかを見つけることができません私が必要とするもののようなもの、どんな助けも非常に高く評価されるでしょう。

編集:現在の状況では、既存のコードとやりとりする方法がないため、実際のコードに触れずにこれらのUIイベントをリッスンする方法を見つけようとしています(モジュール/ライブラリこれを達成することが可能である場合)、私は知らないけれども

enter image description here

+0

をすることができ使用し、それを行うための直接的な方法がないと思いますあなたの目的は何ですか? – mpals

+0

申し訳ありません私はなぜ私はそれを行う必要があるの私の目標については、私の質問を編集しました – Robert

答えて

0

私はあなたが外でそれを処理したい場合は、あなたをハンドラ

+0

はい私はハンドラ、ルーパーについて物事を読んできたが、私が見てきたすべてのコードは、 handler.post)イベントはトリガされるので、常に双方向のやりとりができます。片方向が必要です。擬似的な説明はこのようになります(UIスレッドのハンドラをアタッチしてから、 uiスレッドが発生するメッセージ) – Robert

関連する問題