先上效果图:
本工程需要lib库支持,该库摘自与网上资源,因忘记原始出处链接,未能在此提供给大家参考。
该lib库我已上传到资源中,供大家学习交流:http://download.csdn.net/detail/huashanjuji/9426735
在引用该lib库的基础上,我写了一个简单的demo
代码如下;
<pre name="code" class="java">public class MainActivity extends Activity {
private List<String> mList = new ArrayList<String>();
private ListAdapter mAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_list);
//添加数据
for (int i = 0; i < 10; i++) {
mList.add("tab " + i);
}
SwipeMenuListView listView = (SwipeMenuListView) findViewById(R.id.listView);
mAdapter = new ListAdapter();
listView.setAdapter(mAdapter);
SwipeMenuCreator creator = new SwipeMenuCreator() {
public void create(SwipeMenu menu) {
createMenu(menu);
}
/**创建滑动部分菜单*/
private void createMenu(SwipeMenu menu) {
SwipeMenuItem item1 = new SwipeMenuItem(getApplicationContext());
item1.setBackground(new ColorDrawable(Color.rgb(0xE6, 0xE1,
0x4F)));
item1.setWidth(90);
item1.setIcon(R.drawable.like);
menu.addMenuItem(item1);
SwipeMenuItem item2 = new SwipeMenuItem(getApplicationContext());
item2.setBackground(new ColorDrawable(Color.rgb(0xF9, 0x3F,
0x25)));
item2.setWidth(90);
item2.setIcon(R.drawable.delete);
menu.addMenuItem(item2);
}
};
listView.setMenuCreator(creator);
//点击滑动菜单选项
listView.setOnMenuItemClickListener(new SwipeMenuListView.OnMenuItemClickListener() {
public boolean onMenuItemClick(int position, SwipeMenu menu,
int index) {
switch (index) {
case 0:
// 收藏
Toast.makeText(getApplicationContext(), "收藏", 0).show();
break;
case 1:
// 删除
mList.remove(position);
mAdapter.notifyDataSetChanged();
break;
}
return false;
}
});
}
class ListAdapter extends BaseAdapter {
public int getCount() {
return mList.size();
}
public long getItemId(int position) {
return position;
}
public View getView(int position, View convertView, ViewGroup parent) {
HoldView holdView;
if (convertView == null) {
holdView = new HoldView();
convertView = View.inflate(getApplicationContext(),
R.layout.list_item, null);
holdView.textCon = (TextView) convertView
.findViewById(R.id.tv_con);
convertView.setTag(holdView);
}
holdView = (HoldView) convertView.getTag();
holdView.textCon.setText(mList.get(position));
return convertView;
}
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
}
class HoldView {
TextView textCon;
}
}