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;
    	}
    
    }
    
  • 相关阅读:
    Oracle 创建索引分区
    Shiro SessionManager会话管理器设计概念
    管理表分区
    Oracle 表分区策略
    Oracle 表分区
    参考Shiro的Session定期验证会话失效的线程池
    HDU 3555 Bomb (数位dp)
    POJ 3666 Making the Grade (动态规划)
    Gym
    POJ
  • 原文地址:https://www.cnblogs.com/geniusxjq/p/4084931.html
Copyright © 2011-2022 走看看