如何为自定义视图禁用onTouchEvent侦听器

时间:2014-01-22 05:51:16

标签: android android-layout

我有一个通过扩展View类创建的自定义视图。我的自定义视图会覆盖onTouchEvent。 我希望能够转变视图的开启和关闭能力。我需要从视图中做到这一点。有谁知道我怎么能做到这一点?只需致电

  setEnabled(false);

不起作用。

2 个答案:

答案 0 :(得分:0)

尝试设置以下

setOnTouchListener(空)

答案 1 :(得分:0)

我不确定这是否是正确的解决方案,但它有效:

        this.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) {
                return true;
            }
        });

这会阻止其他触控相关的听众接收事件,因此onTouchEvent不会被调用。

您可以使用setOnTouchListener(null)返回正常状态,以便onTouchEvent再次正常工作。

如果您找到了更好的解决方案,我希望您发布它。