我在我的活动中调用此函数:
@Override
public boolean dispatchTouchEvent(MotionEvent touchEvent)
Run Code Online (Sandbox Code Playgroud)
这允许我在任何组件聚焦之前处理操作,甚至拒绝将焦点放在这些元素上.
问题:我想知道我怎么知道在这个函数中触及了什么组件(View),然后我可以选择是否要完成事件.
UGLY SOLUTION:我现在有一个丑陋的解决方案是:我知道允许事件发生的组件的位置,并且我做了很多条件来大致决定用户是否点击了这个组件.
谢谢.
您可能想使用OnTouchListener
private OnTouchListener mOnTouchListener= new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
switch(v.getId()){
case R.id.id1):
// Do stuff
break;
case R.id.id2:
// Do stuff
break;
}
return false/true;
}
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2752 次 |
| 最近记录: |