2

我有一个包含 ListView 的 DrawerLayout 和一个包含 TabHost 的 FrameLayout。如果我单击 DrawerLayout 的空白区域,则单击会传递到 FrameLayout,通常会更改选项卡的状态。选项卡从视图中隐藏,所以我不希望发生这种情况。

当 DrawerLayout 打开时,是否有任何方法可以拦截触摸事件,这样就不会发生这种情况?

4

3 回答 3

2

尝试这个 :

getParent().requestDisallowInterceptTouchEvent(true);

这不允许将事件传递给其父布局。(停止事件传播)。

于 2013-12-02T11:30:58.473 回答
1

在滑动窗格布局上设置android:clickable="true"标签。

于 2016-08-31T06:09:56.767 回答
0

在您的抽屉片段中:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.drawer_layout, null);
    view.setClickable(true); // your solution!
    return view;
}
于 2014-03-28T10:03:42.607 回答