遍历文件添加到listview.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
遍历文件添加到listview

有关android SD卡操作中,遍历是最简单且最基础常用的操作。 ? 下面就来实现遍历sd卡中所有文件,并且用一个ListView显示出来。 ? 首先,了解一下ListView的用法。 ? android document中的解释: A view that shows items in a vertically scrolling list. The items come from the?ListAdapter?associated with this view. ? 也就是说 listview是将一个ListAdapter的内容用图像显示出来,? 所以我们可以用一个SimpleAdapter来保存SD卡遍历的结果。 ? ? 而我们知道linux文件系统是一颗单独的树(没有森林)。所以从根目录进行一次深搜就能访问所有节点。 ? ? 而android SD卡的根目录为/sdcard。 ? ? [java]?view plaincopy private?void?getAllFiles(File?root){?? ?????????? ????????File?files[]?=?root.listFiles();?? ?????????? ????????if(files?!=?null)?? ????????for(File?f:files){?? ?????????? ????????????if(f.isDirectory()){?? ????????????????getAllFiles(f);?? ????????????}?? ????????????else{?? ????????????????this.list.add(f);?? ????????????}?? ????????}?? ????}?? ? ? 调用getAllFiles(new File(/sdcard))后所有文件保存在list中。 ? ? 下面就是在将数据保存到SimpleAdapter中了。 ? 查阅android document 其构造函数为: public?SimpleAdapter ?(Context?context,?List??extends?MapString,?? data, int resource,?String[]?from, int[] to) 其中 context为 显示listView的activity, data为 数据, resource为 listview中每一格单元格的布局xml的位置(res/layout/relative.xml,自己创建) from 为listview中每一个item中组件(如一个item中含有2个textview--textview1,textview2)所对应的数据源。 to 为 form的数据源对应的item中组件的名称(textview1,textview2)。 ? 所以需要将刚才得到的list数据转化成?List??extends?MapString,??类型 ? 以下为转化函数 ? [java]?view plaincopy private?ArrayListMapString,?Object?getMapData(ArrayListFile?list){?? ????????ArrayListMapString,?Object?data?=?new?ArrayListMapString,?Object();?? ????????HashMapString,Object?item;?? ????????int?i?=?0?;?? ????????for(i=0;ilist.size();i++){?? ????????????????item?=?new?HashMapString,Object();?? ????????????????String?path??=?list.get(i).toString();?? ????????????????String?name?=?path.substring(path.lastIndexOf(/)+1,path.length());?? ????????????????//保存每一格list单元格的数据?,?? ????????????????item.put(ItemText,name);?? ????????????????item.put(ItemTitle,?path);?? ????????????????? ????????????????data.add(item);?? ????????}?? ????????return?data;?? ????}?? ? ? 最后 通过listView 显示 方法为

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档