关闭SwipeMenuListView中的项目

时间:2015-10-20 08:57:39

标签: listview swipe menuitem

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

enter image description here

1 个答案:

答案 0 :(得分:0)

我解决它只是为了打开来自Asha Soman回答http://stackoverflow.com/questions/18652692/how-to-disable-scrollview-scrolling

的scrollview
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);
    }
});

但我意识到,当用户开始关闭时,我需要检测。所以我修改了一下库(Sw​​ipeMenuListView类),我添加了两个自定义onPress监听器,如下图所示(不要忘记检查它们是否为空)和一个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);
    }
});