我想读取本地的图片,我用一个按钮当点击按钮时系统会自动去读android的sd卡,把里面的所有图片都罗列出来供我们选择呢,我是个新手希望大家能多给点指导,又能实现的代码更加感激……

解决方案 »

  1.   

    http://www.eoeandroid.com/thread-34142-1-1.html
      

  2.   

    private List<String> items=null //存放图片名
    private List<String> paths=null;//存放图片路径
    //读取sdcard内容 filePath=Environment.getExternalStorageDirectory().getPath();
    private void getFileDir(String filePath)
    {
          items=new ArrayList<String>();
          paths=new ArrayList<String>();
          File f=new File(filePath);
          File[] files=f.listFiles();
          for(File f:files)
          {
               if(getMIMEType(f)
               {
                     items.add(f.getName());
                     paths.add(f.getPath());
                }
           }
    }private boolean getMIMEType(File f)
    {
        String fileName=f.getName();
        String end=fileName.subString(fileName.lastIndexOf(".")+1,fileName.length()).toLowerCase();
        if(end.equals("jpg")||end.equals("gif")||end.equals("png")||end.equals("jpeg")||end.equals("bmp"))
     {
       return true;
      }
    else
    {
    return false;
    }
    }
      

  3.   

    package mars.activity;import android.app.Activity;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.os.Bundle;
    import android.os.Environment;
    import android.widget.ImageView;public class Activity03 extends Activity 
    {
    private Bitmap bitmap;
    private ImageView imageView;
        /** Called when the activity is first created. */
    //获得SD中已保存的图片
        @Override
        public void onCreate(Bundle savedInstanceState) 
        {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);  
            imageView = (ImageView) findViewById(R.id.ig);
            String imagepath = Environment.getExternalStorageDirectory() + "/Sys/test.jpg";
            bitmap = BitmapFactory.decodeFile(imagepath);   
            imageView.setImageBitmap(bitmap);
        }
    }
      

  4.   

    这样能取到但是用ImageView显示不出来啊
    用什么显示多张图片呢??
      

  5.   


    点击ListView的一行,取得其中的路径(paths)显示就行啦啊!Bimap bmp=BimapFactory.decodeFile(paths.get(i));
    image.setImageBitmap(bmp);
    试试吧!