2012-12-16 44 views
0

在我的应用程序中,我使用两个外部库(Sliding menuHorizontal Listview)。第一个实现了像Facebook应用程序一样的滑动菜单效果,并且工作正常,我可以通过滑动或单击按钮来触发移动。第二个实现了一个水平的listview,我可以向左/向右滑动。使用他们两个我可以看到列表视图,但滚动移动不起作用。我该如何解决它?我想菜单是“窃取”滑动操作。Android滑动侧菜单和水平列表视图

如果你需要一些代码,请问。

编辑:其实它的作品!我只需要将手指放在水平视图上并向上/向下滑动一下,然后我就可以向左/向右滑动。这可能是这种行为的原因?

回答

2

有一个非常简单的解决方案!只需为您的Horizo​​ntalListView设置OnTouchListener,在ACTION_DOWN上禁用Slinding菜单并在ACTION_UP上重新启用它。

getActivity().findViewById(R.id.my_horizontal_list_view).setOnTouchListener(

    new OnTouchListener() { 

     @Override 
     public boolean onTouch(View v, MotionEvent event) { 

      if (event.getAction() == MotionEvent.ACTION_DOWN) { 
       ((SlidingFragmentActivity) getActivity()).getSlidingMenu().setSlidingEnabled(false); 
      } 

      if (event.getAction() == MotionEvent.ACTION_UP) { 
       ((SlidingFragmentActivity) getActivity()).getSlidingMenu().setSlidingEnabled(true); 
      } 

      return false; 
     } 
    } 
); 
+0

不是太优雅,但工作 谢谢! –