版权声明:本文为DmrfCoder原创作品,如有转载请注明出处 https://blog.csdn.net/qq_36982160/article/details/82351901
在使用 listview时经常会遇到左滑弹出删除或者对item进行其他操作的需求,就是下图中红色圈圈的部分:
本文本着避免重造轮子的原则使用这个开源库,具体用法;
添加依赖
dependencies {
compile 'com.baoyz.swipemenulistview:library:1.3.0'
}
代码使用
SwipeMenuCreator creater = new SwipeMenuCreator() {
@Override
public void create(SwipeMenu menu) {
// create置顶item
SwipeMenuItem item1 = new SwipeMenuItem(getActivity());
// set item background
item1.setBackground(new ColorDrawable(Color.rgb(0xF9, 0x3F, 0x25)));
// set item width
item1.setWidth(dp2px(90));
// set item title
item1.setTitle("删除");
// set item title fontsize
item1.setTitleSize(18);
// set item title font color
item1.setTitleColor(Color.WHITE);
// add to menu
menu.addMenuItem(item1);
}
};
listview.setMenuCreator(creater);
添加点击事件:
listview.setOnMenuItemClickListener(new SwipeMenuListView.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(final int position, SwipeMenu menu, int index) {
switch (index) {
case 0:
new AlertDialog(getActivity())
.setTitle("删除亲友")
.setMessage("将彻底删除该亲友的所有条目,确认删除?")
.setLeftButton("取消", null)
.setRightButton("确定", new View.OnClickListener() {
@Override
public void onClick(View v) {
//删除的逻辑
}
})
.show();
break;
default:
break;
}
return false;
}
});