zoukankan      html  css  js  c++  java
  • 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;
    	}
    
    }
    
  • 相关阅读:
    团队项目-第一阶段冲刺7
    团队项目-第一阶段冲刺6
    Spring Boot 揭秘与实战(七) 实用技术篇
    Spring Boot 揭秘与实战(七) 实用技术篇
    Spring Boot 揭秘与实战(六) 消息队列篇
    Spring Boot 揭秘与实战(五) 服务器篇
    Spring Boot 揭秘与实战(五) 服务器篇
    Spring Boot 揭秘与实战(五) 服务器篇
    Spring Boot 揭秘与实战(五) 服务器篇
    Spring Boot 揭秘与实战(四) 配置文件篇
  • 原文地址:https://www.cnblogs.com/geniusxjq/p/4084931.html
Copyright © 2011-2022 走看看