android开发类似微信列表向左滑动按钮操作

话不多说,直接上代码,有详细的注释的。

layout布局中:

主要是跟大家说一下listview怎么写:

    <com.foxhis.view.PullToRefreshView
        android:id="@+id/pull_refresh_viewId"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#00000000"
        android:orientation="vertical"
        android:paddingBottom="5dp"
        android:paddingLeft="5dp"
        android:paddingRight="5dp"
        android:paddingTop="5dp" >

      <span style="color:#FF0000;">  <com.foxhis.view.swipemenu.SwipeMenuListView</span>
            android:id="@+id/list_infoId"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:layout_marginTop="13dp"
            android:cacheColorHint="#00000000"
            android:divider="@color/trsparent_white"
            android:dividerHeight="13dp"
            android:scrollingCache="true" >
       <span style="color:#FF0000;"> </com.foxhis.view.swipemenu.SwipeMenuListView></span>
    </com.foxhis.view.PullToRefreshView>

java中的代码实现:

<pre name="code" class="java">                SwipeMenuListView listInfos = (SwipeMenuListView) listInfoView.findViewById(R.id.list_infoId);
ListViewAdapter adapter = new ListViewAdapter(getActivity(), list);listInfos.setAdapter(adapter); initSwipeMenuLv(); //这是比较重要的方法listInfos.setOnMenuItemClickListener(new OnMenuItemClickListener() {@Overridepublic void onMenuItemClick(final int position, SwipeMenu menu, int index) { //一共加了三个按钮,分别点击有不同的事件效果switch (index) {case 0: //添加的按钮点击
//点击事件代码添加
 break;case 1:break;case 2:break;}}});

 initSwipeMenuLv()方法 
        private int dp2px(int dp) {
		return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dp, rs.getDisplayMetrics());
	}

	private void initSwipeMenuLv() { //这里创建了三个按钮图片
		creator = new SwipeMenuCreator() {
			@Override
			public void create(SwipeMenu menu) {
				// switch (menu.getViewType()) {
				// case 0:
				// 创建一个Item
				SwipeMenuItem suspendItem = new SwipeMenuItem(getActivity().getApplicationContext());
				// 设置背景Color.rgb(0x30, 0xB1,0xF5)
				suspendItem.setBackground(new ColorDrawable(Color.WHITE));
				// 设置宽度
				suspendItem.setWidth(dp2px(70));
				// // 设置显示的文字
				// suspendItem.setTitle(getResources().getString(R.string.txt_short_suspend));
				// 设置文字大小
				// uploadItem.setTitleSize(18);
				// 设置文字颜色
				// uploadItem.setTitleColor(Color.WHITE);
				// 设置一个图标bt_supplements
				suspendItem.setIcon(R.drawable.bt_delete_selector);
				// 添加到菜单里
				<span style="color:#FF0000;">menu.addMenuItem(suspendItem);</span>
				// break;
				// case 1:
				// 创建一个Item
				SwipeMenuItem checkRoomItem = new SwipeMenuItem(getActivity().getApplicationContext());
				// 设置背景rgb(0xF9,0x3F, 0x25)
				checkRoomItem.setBackground(new ColorDrawable(Color.BLUE));
				// 设置宽度
				checkRoomItem.setWidth(dp2px(70));
				// // 设置显示的文字
				// checkRoomItem.setTitle(getResources().getString(R.string.text_check_room));
				// 设置文字大小
				// uploadItem.setTitleSize(18);
				// 设置文字颜色
				// uploadItem.setTitleColor(Color.WHITE);
				// 设置一个图标bt_delete
				checkRoomItem.setIcon(R.drawable.bottom_checkfor_selector);
				// 添加到菜单里
				<span style="color:#FF0000;">menu.addMenuItem(checkRoomItem);</span>
				// break;
				// }
				// 创建一个Item
				SwipeMenuItem checkoutItem = new SwipeMenuItem(getActivity().getApplicationContext());
				// 设置背景rgb(0xF9,0x3F, 0x25)
				checkoutItem.setBackground(new ColorDrawable(Color.RED));
				// 设置宽度
				checkoutItem.setWidth(dp2px(70));
				// // 设置显示的文字
				// checkoutItem.setTitle(getResources().getString(R.string.guest_checkout_nopay_str));
				// 设置文字大小
				// uploadItem.setTitleSize(18);
				// 设置文字颜色
				// uploadItem.setTitleColor(Color.WHITE);
				// 设置一个图标bt_delete
				checkoutItem.setIcon(R.drawable.bottom_checkout_selector);
				// 添加到菜单里
				<span style="color:#FF0000;">menu.addMenuItem(checkoutItem)</span>;
			}
		};
		// 将菜单生成器设置给ListView即可
		listInfos.setMenuCreator(creator);
	}
这样就可以了!!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值