我对Touch Event Dispatch有一个疑问。
通常Activity与一个Window相关联,所以如果我使用类似的代码 在某种程度上,事件被正确地发送到相应的视图 那些坐下。
getWindow()。getDecoreView()。dispatchTouchEvents()。
但是如果有一些新的Windows出现在屏幕上,(比如Dialog或PopUpWindow) 如何将事件发送到那些窗口?
是否有可用的API?
任何想法,Android Framework如何将事件聚焦到最重要的位置 窗口?
如果我们可以从框架中公开API,那么任何指向特定的指针 类或功能?
答案 0 :(得分:2)
android中的事件逐级调度。该活动从活动 - > ViewGroup->查看开始,您可以实施这些方法来控制事件发送:
dispatchTouchEvent(MotionEvent)
onTouchEvent(MotionEvent)
onInterceptTouchEvent(MotionEvent)