Android简单文件浏览器源代码
16lz
2022-06-11
- 欢迎加入QQ交流3群:317874559
<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>
<?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>
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;@Overrideprotected 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() {@Overridepublic 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() {@Overridepublic 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]);elsemaps.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("该文件为空");}}@Overridepublic 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(安卓)数据存储之SP存储,内部存储,外部存储
- Android(安卓)Studio多环境打包
- [Android]解决failed to get the required ADT version from sdk
- android之Buffer类及子类学习
- Android(安卓)获取联系人
- Android(安卓)实现滑动的六种方式
- android之获取信息终端
- NPM 和webpack 的基础使用
- 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程