Androidにおけるイベント伝達の仕組み

Androidでは、イベント伝達は3つの方法で行うことができます。

  1. イベントは、ViewのdispatchTouchEvent()メソッドで伝達されます。この場合、イベントは最初にアクティビティのdispatchTouchEvent()メソッドによってコールされ、その後ルートレイアウトのdispatchTouchEvent()メソッドに渡され、さらに子ビューのdispatchTouchEvent()メソッドに順番に渡されます。最終的なイベント受信者が検出されるまで、この処理が行われます。
  2. ViewのonTouchEvent()メソッドによりイベント伝搬が行われ、イベントは最終的な受け手から順に、上層のレイアウトへ、最終的にはActivityのonTouchEvent()メソッドへと受け渡されます。
  3. ViewGroupのonInterceptTouchEvent()メソッドでイベントの伝搬を行います。この方法ではイベントはまずルートビューのonInterceptTouchEvent()メソッドに、次に子뷰のonInterceptTouchEvent()メソッドに渡され、いずれかの子ビューのonInterceptTouchEvent()メソッドがtrueを返した場合はその子ビューがイベントの受信者となります。そうでない場合は、その下のビューにさらに伝搬され、最終的な受信者が見つかるまで続けます。
广告
広告は10秒後に閉じます。
bannerAds
bannerAds