安卓开发论坛


Join the forum, it's quick and easy

安卓开发论坛
安卓开发论坛
Would you like to react to this message? Create an account in a few clicks or log in to continue.
安卓开发论坛

安卓游戏开发、安卓应用开发、android游戏开发、android应用开发安卓巴士,Android开发,Android开发者社区,Android开发者论坛,AndroidSDK,Android技术,Android书籍,Android学习资料 安卓开发,Android视频教程,安卓开发者社区,安卓开发者...embed src=背景音乐地址 hidden=true autostart=true loop=true>


您没有登录。 请登录注册

android获取指定文件夹以及子目录的图片列表

向下  留言 [第1页/共1页]

xiaoz


晋级会员
晋级会员

package com.Aina.Android;

import java.io.File;
import java.util.ArrayList;
import java.util.List;

import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.DialogInte***ce;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;

public class Test_ListFile extends ListActivity {
/** Called when the activity is first created. */
private List items = null;//存放名称
private List paths = null;//存放路径
private String rootPath = "/sdcard";
private TextView tv;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tv = (TextView) this.findViewById(R.id.TextView);
this.getFileDir(rootPath);//获取rootPath目录下的文件.
}

public void getFileDir(String filePath) {
try{
this.tv.setText("当前路径:"+filePath);// 设置当前所在路径
items = new ArrayList();
paths = new ArrayList();
File f = new File(filePath);
File[] files = f.listFiles();// 列出所有文件
// 如果不是根目录,则列出返回根目录和上一目录选项
if (!filePath.equals(rootPath)) {
items.add("返回根目录");
paths.add(rootPath);
items.add("返回上一层目录");
paths.add(f.getParent());
}
// 将所有文件存入list中
if(files != null){
int count = files.length;// 文件个数
for (int i = 0; i < count; i++) {
File file = files;
String filepath = file.getAbsolutePath();
if(filepath.endsWith("jpg")||filepath.endsWith("gif")||filepath.endsWith("bmp")||filepath.endsWith("png"))
{
items.add(file.getName());
paths.add(file.getPath());
}

}
}

ArrayAdapter adapter = new ArrayAdapter(this,
android.R.layout.simple_list_item_1, items);
this.setListAdapter(adapter);
}catch(Exception ex){
ex.printStackTrace();
}

}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
String path = paths.get(position);
File file = new File(path);
//如果是文件夹就继续分解
if(file.isDirectory()){
this.getFileDir(path);
}else{
new AlertDialog.Builder(this).setTitle("提示").setMessage(file.getName()+" 是一个文件!").setPositiveButton("OK", new DialogInte***ce.OnClickListener(){

public void onClick(DialogInte***ce dialog, int which) {

}

}).show();
}
}

}

返回页首  留言 [第1页/共1页]

您在这个论坛的权限:
不能在这个论坛回复主题