停止SwipeMenuLIstView进行滑动

时间:2015-07-01 15:28:08

标签: android

我正在使用Gipeu的滑动菜单列表视图 https://github.com/baoyongzhang/SwipeMenuListView

根据我的项目要求,我需要停止一些列表View to swipe
例如,我想停止位置5上的列表项 我该怎么做

mListView.setOnSwipeListener(new SwipeMenuListView.OnSwipeListener() {
        @Override
        public void onSwipeStart(int position) {
            if (positon == 5) {
                Toast.makeText(getApplicationContext(), "you are not Allow to Swipe", Toast.LENGTH_SHORT).show();

            }
        }

        @Override
        public void onSwipeEnd(int position) {

        }
    });

2 个答案:

答案 0 :(得分:0)

您可以使用BaseSwipListAdapter并根据您的要求更改条件。

 @Override
public boolean getSwipEnableByPosition(int position) {
    if(position==5){
        return false;
    }
    return true;
}

答案 1 :(得分:-1)

您可以创建侦听器的私有实例,如果满足条件,则将其设置为mListView,如果您不想允许滑动处于活动状态,则可以将onSwipeListener设置为null,如下所示:

private SwipeMenuListView.OnSwipeListener swipeListener = new     SwipeMenuListView.OnSwipeListener() {
    @Override
    public void onSwipeStart(int i) {

    }

    @Override
    public void onSwipeEnd(int i) {

    }
});
if (condtion) {
            Toast.makeText(getApplicationContext(), "you are not Allow to    Swipe", Toast.LENGTH_SHORT).show();
           //disable swiping
           mListView.setOnSwipeListener(null);

        }else{
          //allow swiping
          mListView.setOnSwipeListener(swipeListener);
        }