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="@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;
	}

}
时间: 2024-10-08 08:16:12

Android简单文件浏览器源代码 (转)的相关文章

android 简单文件操作

1.布局 <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="match_parent" android:orient

java swing开发最简单的浏览器源代码下载

原文:java swing开发最简单的浏览器源代码下载 源代码下载地址:http://www.zuidaima.com/share/1550463483628544.htm java swing开发最简单的浏览器,已测试.... package com.zuidaima; import org.eclipse.swt.SWT; import org.eclipse.swt.browser.Browser; import org.eclipse.swt.browser.CloseWindowLis

简单文件浏览器--实现简易文件选取返回路径功能

因为今天学习Andorid Sample一个示例的时候需要使用一个选取图片的功能,示例中给的Intent没有办法用,因此,自己搜集资料来实现这个简单的文件浏览器,主要这两个文件就贴在下面了: 首先是模型层,定义显示的文件实体(保存文件对应的Icon和其简易名称与绝对路径) 1 public class DirEntry { 2 private int icon; 3 private String dirName; 4 private String path; 5 6 public String

【Java】 实现一个简单文件浏览器(2)

接着上篇文章 接下来说下程序右侧的文件内容表格如何实现 FileTable类: FileTable基础于JTable类,构造函数里用setDefaultRenderer设置每行默认的渲染器为FileTableCellRenderer(下面会说如何实现) setAutoCreateRowSorter(true)函数自动创建一个默认的排序筛选器,等同于:setRowSorter(new TableRowSorter(model)) RowSorter:默认情况下,如果启用排序,那么排序时 JTabl

Android简单图片浏览器

效果如下:            代码编写如下: Crize_demo\app\src\main\res\layout\activity_main.xml 1 <!--定义一个线性布局--> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 xmlns:tools="http://schemas.android.com/tools" 4 andr

Android 简单图片浏览器 读取sdcard图片+形成缩略图+Gallery

1.读取SD卡上面的图片信息 //想要的返回值所在的列 String[] projection = { MediaStore.Images.Thumbnails._ID}; //图片信息存储在 android.provider.MediaStore.Images.Thumbnails数据库 //快速查询数据库中的图片对应存放路劲 Cursor cursor = managedQuery( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI, pro

Android 4.4 全套源代码及子模块源代码的下载方法

博文<Android源代码下载--用git clone实现单个文件夹下载>介绍了採用git clone方法下载Android单个文件夹源代码的方法,这篇文章已经有四年的历史,这期间Google对源代码的管理站点已经进行了更改,直接採用原来的方法下载源代码已经失效. 本文介绍了在ubuntu下(在Windows下安装Cygwin,通过Cygwin也可在Windows里通过本文的下载步骤下载Android源代码)获取眼下最新的Android 4.4 全套源代码以及单个自模块源代码的下载方法.可依据

Android入门之文件系统操作(一)简单的文件浏览器 (转)

Android入门之文件系统操作(一)简单的文件浏览器 (转)        1. import java.io.File; 2. import java.util.*; 3. 4. import android.app.Activity; 5. import android.content.Context; 6. import android.os.*; 7. import android.view.*; 8. import android.widget.*; 9. import androi

Android简单的文件浏览器,ListActivity的简单用法

2014-07-29 13:39:09MainActivity.java package com.example.sample_4_21; import java.io.File; import java.util.ArrayList; import java.util.List; import android.app.AlertDialog; import android.app.ListActivity; import android.content.DialogInterface; imp