我需要禁用滑动以打开/关闭SlidingPaneLayout,因为我的主要 View 是 map 。
我将使用按钮打开/关闭它。
最佳答案
子类SlidingPaneLayout
,重写onInterceptTouchEvent()
并使其始终返回false
。这将防止SlidingPaneLayout
处理触摸事件。
有关更多信息,请参见http://developer.android.com/training/gestures/viewgroup.html。
更新:
如果 subview 未处理触摸事件,则仍将调用SlidingPaneLayout
的onTouchEvent()
方法。要完全禁用处理触摸事件,还请覆盖onTouchEvent()
并始终返回false
。
@Override
public boolean onInterceptTouchEvent(MotionEvent ev) {
return false;
}
@Override
public boolean onTouchEvent(MotionEvent ev) {
return false;
}
注意:这种方法的缺点是,仅部分可见时,触摸事件仍会分派(dispatch)到第二个 subview 。因此,您可能想查看其他答案。
关于android - Android,禁用滑动以与SlidingPaneLayout交互,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17002466/