package cn.zyh.l014fileexplorer;
import java.io.File;
import android.os.Bundle;
import android.app.Activity;
import android.app.ListActivity;
import android.content.Intent;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListView;
public class MainActivity extends ListActivity {
private ArrayAdapter<EFile> adapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
String dirname = getIntent().getStringExtra("name");
if(dirname == null)
{
dirname = "/";
}
File dir = new File(dirname);
File[] children = dir.listFiles();
adapter = new ArrayAdapter<EFile>(this, android.R.layout.simple_list_item_1);
if(children != null)
{
for(File file : children)
{
adapter.add(new EFile(file));
}
}
setListAdapter(adapter);
}
@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
EFile f = adapter.getItem(position);
if(f.getFile().isDirectory())
{
Intent i = new Intent(this,MainActivity.class); //再启动一个MainActivity类型的activity
i.putExtra("name", f.getFile().getAbsolutePath()); //绝对路径
startActivity(i);
}
super.onListItemClick(l, v, position, id);
}
}
package cn.zyh.l014fileexplorer;
import java.io.File;
public class EFile {
private File file ;
public EFile(File file) {
super();
this.file = file;
}
public File getFile() {
return file;
}
public void setFile(File file) {
this.file = file;
}
public String toString()
{
return String.format("[%s][%s]",file.isDirectory()?"dir":"file" ,file!=null?file.getName():null) ;
}
}