首页 > 代码库 > Android简单文件浏览器源代码 (转)

Android简单文件浏览器源代码 (转)

 

Android简单文件浏览器源代码 (转)

 

 

activity_main .xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:orientation="vertical"    android:layout_gravity="center_horizontal"    tools:context=".MainActivity" >    <TextView        android:id="@+id/txt1"        android:layout_width="wrap_content"        android:layout_height="wrap_content" />   <ImageButton        android:id="@+id/imageBt1"       android:layout_width="wrap_content"       android:layout_height="wrap_content"       android:src="http://www.mamicode.com/@drawable/home"/>    <ListView        android:id="@+id/listFile"        android:layout_width="wrap_content"        android:layout_height="wrap_content" >    </ListView></LinearLayout>

 

fileimageandtext.xml

 

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="horizontal" >    <ImageView        android:id="@+id/images"        android:layout_width="wrap_content"        android:layout_height="wrap_content" />    <TextView        android:id="@+id/txtview"        android:layout_width="wrap_content"        android:layout_height="wrap_content" /></LinearLayout>

 

activity_main.java

 
package com.android.xiong.sdfilelook;import java.io.File;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import android.app.Activity;import android.os.Bundle;import android.os.Environment;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.AdapterView;import android.widget.AdapterView.OnItemClickListener;import android.widget.ImageButton;import android.widget.ImageView;import android.widget.ListView;import android.widget.SimpleAdapter;import android.widget.TextView;public class MainActivity extends Activity {	private ListView listfile;	//当前文件目录	private String currentpath;	private TextView txt1;	private ImageView images;	private TextView textview;	private ImageButton imagebt1;	private int[] img = { R.drawable.file, R.drawable.folder, R.drawable.home };	private File[] files;	private SimpleAdapter simple;	@Override	protected void onCreate(Bundle savedInstanceState) {		super.onCreate(savedInstanceState);		setContentView(R.layout.activity_main);		listfile = (ListView) findViewById(R.id.listFile);		txt1 = (TextView) findViewById(R.id.txt1);		imagebt1 = (ImageButton) findViewById(R.id.imageBt1);		init(Environment.getExternalStorageDirectory());		listfile.setOnItemClickListener(new OnItemClickListener() {			@Override			public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,					long arg3) {				// TODO Auto-generated method stub				// 获取单击的文件或文件夹的名称				String folder = ((TextView) arg1.findViewById(R.id.txtview))						.getText().toString();				try {					File filef = new File(currentpath + ‘/‘							+ folder);					init(filef);				} catch (Exception e) {					e.printStackTrace();				}			}		});		//回根目录		imagebt1.setOnClickListener(new OnClickListener() {						@Override			public void onClick(View v) {				init(Environment.getExternalStorageDirectory());				}		});			}	// 界面初始化	public void init(File f) {		if (Environment.getExternalStorageState().equals(				Environment.MEDIA_MOUNTED)) {			// 获取SDcard目录下所有文件名			files = f.listFiles();			if (!files.equals(null)) {				currentpath=f.getPath();				txt1.setText("当前目录为:"+f.getPath());				List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();				for (int i = 0; i < files.length; i++) {					Map<String, Object> maps = new HashMap<String, Object>();					if (files[i].isFile())						maps.put("image", img[0]);					else						maps.put("image", img[1]);					maps.put("filenames", files[i].getName());					list.add(maps);				}				simple = new SimpleAdapter(this, list,						R.layout.fileimageandtext, new String[] { "image",								"filenames" }, new int[] { R.id.images,								R.id.txtview });				listfile.setAdapter(simple);			}		} else {			System.out.println("该文件为空");		}	}	@Override	public boolean onCreateOptionsMenu(Menu menu) {		// Inflate the menu; this adds items to the action bar if it is present.		getMenuInflater().inflate(R.menu.main, menu);		return true;	}}

 

Android简单文件浏览器源代码 (转)