listView 结合 ArrayList和HashMap 的应用
2012-03-11 19:29
190 查看
music_item.xml
列表
实现后的界面
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" android:paddingLeft="10dip" android:paddingRight="10dip" android:paddingTop="1dip" android:paddingBottom="1dip"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/mp3_item" /> <TextView android:id="@+id/mp3_name" android:layout_height="30dip" android:layout_width="fill_parent" android:textSize="10pt" android:paddingLeft="10dp" android:textColor="#FFFFFF"/> </LinearLayout>
列表
/** * 文件过滤器 * * @author * */ class MusicFilter implements FilenameFilter { @Override public boolean accept(File dir, String filename) { return (filename.endsWith(".mp3")); } } //绑定音乐 void musicList(){ try{ musiclist.clear(); //扫描SD卡下MP3文件夹中的Mp3歌曲,将扫描出的MP3对象存放到集合中 File mp3File=new File(SkyMusicActivity.SDPath); if(mp3File.listFiles(new MusicFilter()).length>=0){ for(File file:mp3File.listFiles(new MusicFilter())){ Mp3 mp3=new Mp3(); String[] str=file.getName().split("\\."); mp3.setMp3_name(str[0]); mp3.setId(i); i++; musiclist.add(mp3); } } } catch(Exception ex) { ex.printStackTrace(); } } @Override protected void onResume() { // TODO Auto-generated method stub super.onResume(); HashMap<String, String> map=null; List<HashMap<String, String>> list=new ArrayList<HashMap<String,String>>(); if(musiclist.size()!=0){ for(Mp3 m:musiclist){ map=new HashMap<String, String>(); map.put("mp3_item", Integer.toString(m.getId()+1)); map.put("mp3_name", m.getMp3_name()); list.add(map); } SimpleAdapter adapter=new SimpleAdapter (this, list, R.layout.music_item, new String[]{"mp3_item","mp3_name"}, new int[]{R.id.mp3_item,R.id.mp3_name}); setListAdapter(adapter); } }
实现后的界面
![](http://pic002.cnblogs.com/images/2012/362083/2012031119275741.jpg)
相关文章推荐
- 【转】Android学习笔记——hashmap、arraylist(vector)与listview的应用
- 【转】Android学习笔记——hashmap、arraylist(vector)与listview的应用
- LeetCode.652 Find Duplicate Subtrees (Tree和HashMap结合应用,经典必备)
- ArrayList和HashMap的结合使用
- OAF_开发系列17_实现OAF数组应用Vector / Hashmap / Hashtable / Arraylist(案例)
- ArrayList、HashMap 与 员工类(程序员、经理的结合使用) 相当于集合与继承的总结
- JSON 解析 + listView + AsyncTask 的结合使用做个菜谱应用(总结)
- android应用开发全程实录-你有多熟悉listview? getView重写 inflate结合各种Adapter实例
- Android之TabHost与ListView结合应用
- 安卓学习笔记(一) 用适配器适配ListView和ArrayList<HashMap<String,String>>——安卓第二天
- Android应用性能优化之使用SparseArray替代HashMap
- C# []、List、Array、ArrayList 区别及应用
- AJAX技术与asp.net 2.0的完美结合之Timer的web应用 及使用AJAX控件时的“Sys 未定义”错误解决办法
- 关于Andorid联系人应用中PinnedHeaderListView的实现分析
- ArrayList、Vector、HashMap、HashSet的默认初始容量、加载因子、扩容增量
- Java中Hashset、HashMap、ArrayList、LinkedList、Vector之间的联系与区别
- Android中ListView与RadioButton结合----自定义单选列表
- 结合Flex Builder和Flash CS4制作一个中国地图的应用(转)
- Java中List,ArrayList、Vector,map,HashTable,HashMap区别用法
- 观察比较ArrayList,HashSet,HashMap的存储机制