- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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 显示 方法为
您可能关注的文档
最近下载
- 2024届浙江省新阵地教育联盟高三上学期第二次联考作文“君子有三鉴:鉴乎前,鉴乎人,鉴乎镜”导写及范文.docx VIP
- 高速铁路通信工程细部设计和工艺质量标准(1).pdf VIP
- 2020年成人高等学校招生全国统一考试高起点数学(文).docx VIP
- 钢筋混凝土化粪池22S702.pdf VIP
- 医疗设备投放合同.docx VIP
- 附件2农村实用人才基本情况调查表.doc VIP
- 《Python程序设计》高职PPT完整全套教学课件1-110.pptx VIP
- 水电站防汛工作检查表[一].doc VIP
- 关于《农村留守儿童行为习惯培养的研究》的研究报告.doc VIP
- 全概率公式(呼伦贝尔学院吴美华)教学课件.ppt.ppt VIP
文档评论(0)