关闭SwipMenuListView中的项目

关闭SwipMenuListView中的项目,listview,swipe,menuitem,Listview,Swipe,Menuitem,我在linearLayout和scrollView中使用com.baoyz.swipmenulistView.swipmenulistView,因为我需要在一个屏幕上显示更多列表。当用户滑动项目并滚动整个屏幕时,它不会关闭,并且仍然打开,如下图所示。我不知道如何强制关闭它 我只是为了用Asha Soman答案中的scrollview打开它来解决这个问题 但我意识到,当用户开始关闭时,我需要检测。所以我稍微修改了库(类SwipeMenuListView),并添加了两个自定义onPress监听器,如

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


我只是为了用Asha Soman答案中的scrollview打开它来解决这个问题

但我意识到,当用户开始关闭时,我需要检测。所以我稍微修改了库(类SwipeMenuListView),并添加了两个自定义onPress监听器,如下图所示(不要忘了检查它们是否为null),还有一个发布监听器用于操作,现在它可以工作了

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);
    }
});
listGroupsToUpload.setOnReleaseListener(new SwipeMenuListView.OnReleaseListener() {
    @Override
    public void onPress() {
        scrollView.setScrollingEnabled(false);
    }
    @Override
    public void onRelease() {
        scrollView.setScrollingEnabled(true);
    }
});