Android 如何禁用自定义视图的onTouchEvent侦听器
我有一个通过扩展view类创建的自定义视图。我的自定义视图覆盖onTouchEvent。 我希望能够打开和关闭视图的侦听功能。我需要从视图中执行此操作。有人知道我怎样才能做到这一点吗?简单的呼唤Android 如何禁用自定义视图的onTouchEvent侦听器,android,android-layout,Android,Android Layout,我有一个通过扩展view类创建的自定义视图。我的自定义视图覆盖onTouchEvent。 我希望能够打开和关闭视图的侦听功能。我需要从视图中执行此操作。有人知道我怎样才能做到这一点吗?简单的呼唤 setEnabled(false); 不工作。请尝试设置以下选项 setOnTouchListenernull我不确定这是否是正确的解决方案,但它可以工作: this.setOnTouchListener(new View.OnTouchListener() {
setEnabled(false);
不工作。请尝试设置以下选项
setOnTouchListenernull我不确定这是否是正确的解决方案,但它可以工作:
this.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
return true;
}
});
这会阻止其他与触摸相关的侦听器接收事件,因此不会调用onTouchEvent
您可以使用setOnTouchListenernull返回到正常状态,以便onTouchEvent再次工作
如果你找到了更好的解决方案,我希望你能发布。浏览这个链接。也许它会对你有所帮助。