其他分享
首页 > 其他分享> > android-LinearLayout OnClickListener没有响应

android-LinearLayout OnClickListener没有响应

作者:互联网

我正在通过扩展LinearLayout创建自定义窗口小部件.我的自定义窗口小部件中的一个元素是线性布局,从另一个布局中放大.当我设置OnClickListener时,它没有响应.你能给些建议么?

谢谢!

解决方法:

代替使用setOnClickListener使用setOnTouchListener
此代码将作为onclick事件

YourLinearLayout.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            boolean returnValue = true;
            if(event.getAction()==MotionEvent.ACTION_UP){ //on touch release
                returnValue = false; //prevent default action on release
                //do something here
            }
            return returnValue;
        }
    });

然后将其添加到LinearLayout类中以拦截子级触摸事件

@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
    return true; //will prevent child touch events 
}

标签:android-linearlayout,android
来源: https://codeday.me/bug/20191105/1998118.html