Jet*_*hro 6 android listview sd-card
我想创建一个按钮,单击该按钮将转到一个类,该类使用a显示SD卡中的所有媒体文件ListView.
从列表中选择后,它将返回选择的主文件名.如果返回的文件是图像文件,它将显示在一个ImageView文件中,如果返回的文件是音频文件,它只会显示一个图标.
GetFiles()在程序中添加方法.调用它来获取ArrayList<>所有文件.然后,您可以使用它来填充您的listview.您需要提供String参数DirectoryPath.
功能:
public ArrayList<String> GetFiles(String DirectoryPath) {
ArrayList<String> MyFiles = new ArrayList<String>();
File f = new File(DirectoryPath);
f.mkdirs();
File[] files = f.listFiles();
if (files.length == 0)
return null;
else {
for (int i=0; i<files.length; i++)
MyFiles.add(files[i].getName());
}
return MyFiles;
}
Run Code Online (Sandbox Code Playgroud)
用法示例:
@Override
public void onCreate() {
// Other Code
ListView lv;
ArrayList<String> FilesInFolder = GetFiles("/sdcard/somefolder");
lv = (ListView)findViewById(R.id.filelist);
lv.setAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, FilesInFolder));
lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
// Clicking on items
}
});
}
Run Code Online (Sandbox Code Playgroud)
确保外部存储是可读的: http ://developer.android.com/guide/topics/data/data-storage.html#filesExternal
根据名称/扩展名过滤文件: 如何使用特定格式的文件访问sdcard和return和array?
小智 1
File mfile=new File("/sdcard");
File[] list=mfile.listFiles();
System.out.println("list"+mfile.listFiles().length);
for(int i=0;i<mfile.listFiles().length;i++)
{
if(list[i].isHidden())
}
System.out.println("hidden path files.."+list[i].getAbsolutePath());
}
}
Run Code Online (Sandbox Code Playgroud)
可能这会有所帮助!
| 归档时间: |
|
| 查看次数: |
43236 次 |
| 最近记录: |