2015-10-20 101 views
0

我在linearLayout和scrollView中使用com.baoyz.swipemenulistview.SwipeMenuListView,因为我需要在一个屏幕上显示更多列表。当用户正在滑动项目并将整个屏幕卷动在一起时,它不会关闭,并且仍处于打开状态,如下图所示。我不知道如何强制关闭它。在SwipeMenuListView中关闭项目

enter image description here

回答

0

我解决这个问题只是从阿莎·索曼滚动型开放回答http://stackoverflow.com/questions/18652692/how-to-disable-scrollview-scrolling

listGroupsToUpload.setOnSwipeListener(new SwipeMenuListView.OnSwipeListener() { 

    @Override 
    public void onSwipeStart(int position) { 
     LOG.print("onSwipeStart"); 
     scrollView.setScrollingEnabled(false); 
    } 

    @Override 
    public void onSwipeEnd(int position) { 
     LOG.print("onSwipeEnd"); 
     scrollView.setScrollingEnabled(true); 
    } 
}); 

,但我知道,我将需要检测,当用户开始关闭。所以我修改了库(类SwipeMenuListView)一点,我添加了两个自定义的onPress监听器,如下图(不要忘记检查它们为null)和ACTION_UP的一个发布监听器,现在它正在工作。

enter image description here

listGroupsToUpload.setOnReleaseListener(new SwipeMenuListView.OnReleaseListener() { 
    @Override 
    public void onPress() { 
     scrollView.setScrollingEnabled(false); 
    } 
    @Override 
    public void onRelease() { 
     scrollView.setScrollingEnabled(true); 
    } 
});