我有一个自定义视图,我将其添加到相对布局中,并将触摸侦听器添加到自定义视图中,only.The问题是onTouchevent is called.Plz帮助示例代码来自我的实际代码::
ViewGroup base = (ViewGroup)findViewById(R.id.base); //relative layout
base.addView(move);
move.setOnTouchListener(touchListener);
OnTouchListener touchListener = new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
Log.d("onTouch v","="+v);
if(v instanceof MovingView) {
return false;
}
else
return true;
}
public boolean onTouchEvent(MotionEvent event) {
int x = (int)event.getX();
int y = (int)event.getY();
}
};// close listener
发布于 2013-07-03 20:18:32
(首先是),在初始化侦听器之前设置它(它是null)。试试这个:
ViewGroup base = (ViewGroup)findViewById(R.id.base); //relative layout
base.addView(move);
OnTouchListener touchListener = new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
Log.d("onTouch v","="+v);
if(v instanceof MovingView) {
return false;
}
else
return true;
}
public boolean onTouchEvent(MotionEvent event) {
int x = (int)event.getX();
int y = (int)event.getY();
}
};// close listener
move.setOnTouchListener(touchListener);
第二,要意识到:
“当触摸屏事件未被其下的任何视图处理时,将调用onTouchEvent()方法。”
https://stackoverflow.com/questions/17461679
复制相似问题