我正在尝试在 Android 中使用水平滑块菜单(如 Facebook)。
我只希望我的容器视图能够捕获鼠标触摸事件。
我已经尝试setEnable(false)
了容器视图的所有子元素。但这会导致视图无法捕获触摸事件。
public void ChangeMenuVisibility() {
int menuWidth = menu.getMeasuredWidth();
// Ensure menu is visible
menu.setVisibility(View.VISIBLE);
int left = !menuOut ? 0 : menuWidth;
container.smoothScrollTo(left, 0);
menuOut = !menuOut;
ViewUtils.enableDisableViewGroup(
(ViewGroup) window.findViewById(R.id.main_content), !menuOut);
window.findViewById(R.id.main_content).setEnabled(true);
}
[ViewUtils.java]
public static void enableDisableViewGroup(ViewGroup viewGroup,
boolean enabled) {
int childCount = viewGroup.getChildCount();
for (int i = 0; i < childCount; i++) {
View view = viewGroup.getChildAt(i);
view.setEnabled(enabled);
if (view instanceof ViewGroup) {
enableDisableViewGroup((ViewGroup) view, enabled);
}
}
}
我应该遵循什么策略来实现这一点。
任何帮助将不胜感激。