Joh*_*ang 109 events android return listener touch
在android中,大多数事件侦听器方法返回一个布尔值.那个真/假值是什么意思?什么会导致子序列事件?
class MyTouchListener implements OnTouchListener {
@Override
public boolean onTouch(View v, MotionEvent event) {
logView.showEvent(event);
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
关于上面的例子,如果在onTouch方法中返回true ,我发现每个触摸事件(DOWN,UP,MOVE等)都是根据我的logView捕获的.相反,如果返回false,则仅捕获DOWN事件.所以似乎返回false会阻止事件传播.我对么 ?
此外,在OnGestureListener中,许多方法也必须返回一个布尔值.它们有相同的含义吗?
ada*_*amp 136
如果您true从ACTION_DOWN事件中返回,则您对该手势中的其他事件感兴趣.在这种情况下,"手势"表示所有事件,直到最后ACTION_UP或ACTION_CANCEL.false从ACTION_DOWN手段返回您不希望事件和其他视图将有机会处理它.如果您有重叠的视图,这可以是兄弟视图.如果不是,它将冒泡到父母.
Mat*_*ieu 23
从文档:http://developer.android.com/reference/android/view/View.OnTouchListener.html#onTouch (android.view.View,android.view.MotionEvent)
"如果听众已经消费了该事件,则为真,否则为假."
如果返回true,则处理该事件.如果为false,它将转到下一层.
Fal*_*rri 12
布尔值确定是否使用事件.
是的,你是对的.如果返回false,则下一个侦听器处理该事件.如果它返回true,则事件由侦听器使用,而不是发送到下一个方法.
| 归档时间: |
|
| 查看次数: |
42274 次 |
| 最近记录: |