android - 所有 View 的 setOnTouchListener() 警告

标签 android ontouchlistener android-nestedscrollview

最近将 Android Studio 更新到 3.0 后,一切工作正常,但从今天开始,它在任何 View 的每个 setOnTouchListener() 上显示警告,而且它内部的逻辑似乎不再正常工作,我不太记得是否更新了任何库。

警告消息:

Custom View 'NestedScrollView' has setOnTouchListener called on it but does not override performClick

enter image description here

在 Stackoverflow 上搜索后,我实现了以下解决方案,但它没有删除警告。

switch (motionEvent.getAction()) {
                    case MotionEvent.ACTION_DOWN:
                        //some code....
                        break;
                    case MotionEvent.ACTION_UP:
                        view.performClick();
                        break;
                    default:
                        break;
                }

知道为什么会发生这种情况吗?

最佳答案

答案为时已晚,但对于遇到同样问题的其他人来说。实际上,警告文本中给出了解决方案:您需要重写类中的performClick()方法。只需将这段代码放入其中即可:

@Override
public boolean performClick() {
    return super.performClick();
}

关于android - 所有 View 的 setOnTouchListener() 警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47074466/

相关文章:

java - 为另一个字符串的子字符串创建一个新的字符串是多余的吗?

android - 一个 View 内的多个回收 View (gridlayout 和水平线性布局)

android - Kindle Fire 上的 APK 扩展文件

java - Android - 获取所有联系人列表时出错

android - 是否可以使用gridLayoutManager根据屏幕宽度调整recyclerview的行数和列数?

android - 当在项目上激活触摸监听器时单击不起作用

android - 在 Android 4.x 上按下时 Listview 中的 EditText 失去焦点

android - 在使用 recyclerView 填充的 cardView 中为按钮添加点击监听器

android - 导航栏隐藏的 NestedScrollView 底部 [Android]

android - Espresso,当 NestedScrollView 或 RecyclerView 在 CoordinatorLayout 中时滚动不起作用