问题描述
- Android关于ontouchevent不响应
-
我在修改了XML文件后,在某个按钮外面加了一层lineatlayout,然后就不响应了。
以前是
XXXXXXXX>
<
设置的button>现在改成了
XXXXXXXX>
设置的button>
解决方案
rl_bottom.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
System.out.println("@@@@@@@@@@ ");
System.out.println("@@@@@@@@@@@@@@@@");
// 按下语音录制按钮时返回false执行父类OnTouch
return false;
}
});
}
解决方案二:
public boolean onTouchEvent(MotionEvent event) {
System.out.println("!!!!!!!!!!!");
if (!Environment.getExternalStorageDirectory().exists()) {
Toast.makeText(this, "No SDCard", Toast.LENGTH_LONG).show();
return false;
}
if (btn_vocie) {
System.out.println("1");
int[] location = new int[2];
mBtnRcd.getLocationInWindow(location); // 获取在当前窗口内的绝对坐标
int btn_rc_Y = location[1];
int btn_rc_X = location[0];
int[] del_location = new int[2];
del_re.getLocationInWindow(del_location);
int del_Y = del_location[1];
解决方案三:
onTouchEvent中 ACTION_MOVE不响应的问题
----------------------
解决方案四:
获取在当前窗口内的绝对坐标
解决方案五:
假如真如你所说的话,那应该是父布局拦截touch监听了。
假如你是需要监听button的话,其实是可以使用setonclicklistener监听的,这样就不会出现这个问题
解决方案六:
return改为true
解决方案七:
你添加的父布局是否有设置clickable属性,或者设置触摸事件监听拦截
时间: 2024-09-20 20:31:03