我有一个 Activity SlidingPaneLayout
,里面有两个片段:ListView
左侧的 a 和MapFragment
右侧的 a 。如何拦截生成的触摸事件,以便用户可以在不关闭面板的情况下移动地图?
我想用来关闭/打开右侧面板的唯一区域是前四分之一。在该区域的右侧,我想移动地图。
谢谢
编辑2:
好的,现在我想出了如何正确继承 SlidingPaneLayout,现在的问题是如何正确捕获触摸事件:
@Override
public boolean onTouchEvent(MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN
&& event.getX() > (getWidth() / 6)) {
return false;
}
return super.onTouchEvent(event);
}
使用此代码,我无法滑动地图,它仍然是固定的。问题是我只想在选择右面板时拦截触摸(换句话说,只有在显示地图时)。