我有一个带有ImageView. 当我触摸图像时,图像Dialog被关闭,但用户仍在按下屏幕。问题是这个触摸事件没有传递到我下面的窗口Dialog(例如一个Activity)。
我可以以某种方式将它MotionEvent(使用ACTION_DOWN)传递给它,Activity以便它仍然能够生成新的运动事件(使用ACTION_MOVE并ACTION_UP相应地)吗?
编辑
我正在尝试做的事情是Activity:
//Sending touch event
MotionEvent ev = MotionEvent.obtain(SystemClock.uptimeMillis(), SystemClock.uptimeMillis()+100, MotionEvent.ACTION_DOWN, 50, 50, 0);
getWindow().getDecorView().dispatchTouchEvent(ev);
这是我的dispatchTouchEvent和onTouchEvent:
@Override
public boolean dispatchTouchEvent(MotionEvent ev) {
if(mDragging) {
mMainFrame.onTouchEvent(ev); //I'm passing event to some view
onTouchEvent(ev); //and then to my Activity
return true;
}
return super.dispatchTouchEvent(ev);
}
public boolean onTouchEvent(MotionEvent ev) {
return true;
}