防止SwipeMenuListView在ListView中的某个Item上打开

时间:2015-06-30 01:35:40

标签: android

我正在使用Github的SwipeMenuListView,工作正常 但是根据应用程序的要求,我必须通过屏幕显示列表的分隔符 为此,我使用了一些空(虚拟)数据并在列表视图中显示了它 这里提出的问题是因为虚拟数据也刷了
我希望不能刷虚拟数据
我也试图像这样覆盖超级类的触摸事件

@Override
public boolean onTouchEvent(MotionEvent ev) {
if((notesCursor.getCount()-1)<position){
        return true;  
//event tried retun flase;
    }
return super.onTouchEvent(ev);
}  

它适用于数据库中列表视图中的项目但是当我在虚拟数据上滑动时程序挂起(不会崩溃,但我无法点击任何位置)

1 个答案:

答案 0 :(得分:1)

我和你有同样的要求。

我尝试为分隔符项和非分隔符项创建不同的菜单。

SwipeMenuCreator creator = new SwipeMenuCreator() {
    @Override
    public void create(SwipeMenu menu) {
        // do not create menu if item is a divider
        if (menu.getViewType() != DIVIDER) {
            SwipeMenuItem deleteItem = new SwipeMenuItem(getActivity().getApplicationContext());
            deleteItem.setBackground(new ColorDrawable(Color.rgb(0xF9, 0x3F, 0x25)));
            deleteItem.setWidth(CommonUtil.dp2px(70, getActivity().getApplicationContext()));
            deleteItem.setIcon(R.drawable.ic_delete);
            menu.addMenuItem(deleteItem);
        }
    }
};

请参阅baoyongzhang/SwipeMenuListView