位置: 编程技术 - 正文

Android ListViewitem滑动出现删除按钮

编辑:rootadmin

推荐整理分享Android ListViewitem滑动出现删除按钮,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

我自己一个人弄的公司的产品客户端,所以还是想记录下来以免忘记或者丢失...

在我的上一篇博文(点击打开链接)是一个文件管理的东西,基础组件也是ListView所以在此只是改动一下而已。

单击:

点击出现按钮比较简单只需要替换上文中file_row.xml的checkbox为button就可以,然后自己实现onclicklistener就行了,唯一要注意的就是要在xml文件中的button的android:clickable属性设置为true就可以了。

滑动:

滑动来说也相对比较简单需要在上文种FileAdapter.java类中getView方法里的convertView参数对象设置ontouchlistener就可以了,具体看代码:

Android ListViewitem滑动出现删除按钮

[java] view plaincopy @Override public View getView(int position,View convertView,ViewGroup parent){ ViewHolder holder; if(convertView == null){ convertView = mInflater.inflate(R.layout.filemanage, null); convertView.setOnTouchListener(new OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { switch(event.getAction())//根据动作来执行代码 { case MotionEvent. Toast.makeText(context, "move...", Toast.LENGTH_SHORT).show(); break; case MotionEvent. Toast.makeText(context, "down...", Toast.LENGTH_SHORT).show(); DownX = event.getX(); break; case MotionEvent. UpX = event.getX(); Toast.makeText(context, "up..." &#; Math.abs(UpX-DownX), Toast.LENGTH_SHORT).show(); if(Math.abs(UpX-DownX) > ){ ViewHolder holder = (ViewHolder) v.getTag(); holder.cBox.setVisibility(View.VISIBLE); } break; default: } return true; } }); holder = new ViewHolder(); VHs.add(holder); holder.text = (TextView) convertView.findViewById(R.id.filetext); holder.text.setTextColor(context.getResources().getColor(R.color.text_color)); holder.icon = (ImageView) convertView.findViewById(R.id.fileicon); holder.cBox = (Button) convertView.findViewById(R.id.delete_btn); holder.cBox.setOnClickListener(new OnClickListener(){ public void onClick(View v) { Toast.makeText(context, "btn click...", Toast.LENGTH_SHORT).show(); } }); convertView.setTag(holder); }else{ holder = (ViewHolder) convertView.getTag(); } File f=new File(paths.get(position).toString()); if(items.get(position).toString().equals("goroot")){ holder.text.setText("返回根目录"); holder.icon.setImageBitmap(mIcon1); holder.cBox.setVisibility(isVisibility.get(position)); }else if(items.get(position).toString().equals("goparent")){ holder.text.setText("返回上一级"); holder.icon.setImageBitmap(mIcon2); holder.cBox.setVisibility(isVisibility.get(position)); }else{ holder.text.setText(f.getName()); if(f.isDirectory()){ holder.icon.setImageBitmap(mIcon3); holder.cBox.setVisibility(isVisibility.get(position)); }else{ holder.icon.setImageBitmap(mIcon4); holder.cBox.setVisibility(isVisibility.get(position)); } } return convertView; }

滑动多少距离产生效果自己计算,不过我给的好像少了点。

///发现listitem 不响应onItemClick;只能在up事件后调用;这是我修改后的代码:public boolean onTouch(View v, MotionEvent event) {switch (event.getAction())// 根据动作来执行代码{case MotionEvent. 滑动break;case MotionEvent. 按下v.setPressed(true);//item的点击效果downX = event.getX();break;case MotionEvent. 松开v.setPressed(false);//item的点击效果upX = event.getX();if (Math.abs(upX - downX) > ) {Button bt_delete = (Button) v.findViewById(R.id.delete);bt_delete.setVisibility(View.VISIBLE);return true;}//调用onItemClick接口的实现listView.performItemClick(v, pos, listView.getItemIdAtPosition(pos));return false;default:break;}return true;}

Android 4.1.2为通知栏添加wifi开关 摘自:

Android 4.4 eng版本 红框问题 在android4.4.2中编译的eng版本经常出现红框的问题。通过排查因为在frameworks/base/core/java/android/os/StrictMode.java文件中打开了设置选项具体修改如下:---a/frame

Activity与Fragment数据传递之Fragment从Activity获取数据 整理Fragment与Activity之间的数据交换,大体上包括三种:1、Fragment从Activity获取数据2、Activity从Fragment获取数据3、Fragment之间获取数据通常,如果Activity向

标签: Android ListViewitem滑动出现删除按钮

本文链接地址:https://www.jiuchutong.com/biancheng/379576.html 转载请保留说明!

上一篇:Android设计模式之单例模式 Singleton(android设计模式的应用场景)

下一篇:Android 4.1.2为通知栏添加wifi开关(安卓hid通信)

  • 违约金的专票能抵扣吗
  • 全年一次性奖金计税方式2023
  • 厂房地面硬化
  • 担保费能否开专票
  • 财产租赁合同印花税优惠政策
  • 增值税发票什么时候认证
  • 公司组织运动会后的感想
  • 滴滴的发票能不能作废
  • 税控设备抵减增值税会计处理
  • 填写三季度预缴所得税申报表应关注哪些事项
  • 普通发票作废怎么验旧
  • 工程公司后期维保费用如何入账?
  • 出售无形资产的会计科目
  • 增值税纳税申报表怎么填
  • 国税和地税分别占多少
  • 增值税普票收款人
  • 金税三期房产税源信息更改后
  • 固定资产改造计入什么科目
  • 销售蔬菜免税账务处理
  • 注册资本与注册资金的区别
  • 有业务往来的两家公司可以投一个公司吗
  • 净资产收益率怎么求
  • 发票的校验码被公章覆盖了怎么办
  • 以前年度损益调整会计分录
  • 一般纳税人增值税及附加税费申报表怎么填
  • 对公工行证书收入摘要写什么
  • 本年利润总账需要本年合计吗?
  • 医疗机构医疗服务自查报告怎么写
  • 如何给网页添加水印
  • 编译安装php7
  • php 面向对象
  • 下载的压缩文件打不开
  • 确认坏账的会计处理
  • php远程命令执行
  • php rediscluster
  • less预处理器详解
  • set0
  • 悬崖徒步
  • 公司破产清算应先还银行还是股东
  • echarts api文档
  • 用more命令查看文件内容
  • php魔术方法autoload
  • 融资租赁设备所有权归谁
  • 推荐几个比较好用的
  • 个人申请给公司账户转账
  • access使用查询向导创建查询
  • 增值税退税流程怎么操作
  • 公司开普票和专票税率一样吗
  • 企业固定资产折旧可以按照其价值和使用情况
  • 印花税减免计入什么科目
  • 私车公用产生的费用算不算在公务用车运行维护费中
  • 个人独资企业进行委托管理要签订劳动合同
  • 会计中劳保用品是什么
  • 债务利息收入
  • 预收账款怎么处理
  • 小规模纳税人如何申请专票
  • 发票什么时间认证
  • 企业建账前应考虑什么
  • 安装sql server需要注意什么
  • 微软宣布将GPT接入操作系统
  • centos编译器
  • win81蓝屏重启故障
  • yosemite 10.10.3 beta4 下载地址 os x10.10.3beta4官方下载
  • 如何判断win7
  • 代理服务器只能代理客户端http的请求
  • win7如何使用usb无线网卡
  • Win10怎么添加游戏
  • javascript函数大全
  • 解析几何
  • 输出中断
  • github常用操作
  • jquery.form
  • js拖拽生成页面
  • 使用jquery实现的项目
  • 12366纳税服务热线工作时间
  • 江苏省办理准生证的app叫什么
  • 出口退税申报时间是每月15号吗
  • 贵州企业申报系统
  • 哪个部门负责药品检验
  • 公司租商铺
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设