zoukankan      html  css  js  c++  java
  • Android 获取SDCard中某个目录下图片

       本文介绍Android开发中如何获取SDCard中某目录下的所有图片并显示出来,下面的我们提供的这个函数是通用的,只要提供路径就可以查询出该目录下所有图片的路径信息,并保存到一个List<String>中。

     1.获取SDCard中某个目录下图片路径集合

     public List<String> getPictures(final String strPath) { 
        List<String> list = new ArrayList<String>(); 
        File file = new File(strPath); 
        File[] allfiles = file.listFiles(); 
        if (allfiles == null) { 
          return null; 
        } 
        for(int k = 0; k < allfiles.length; k++) { 
          final File fi = files[i]; 
          if(fi.isFile()) { 
                  int idx = fi.getPath().lastIndexOf("."); 
                  if (idx <= 0) { 
                      continue; 
                  } 
                  String suffix = fi.getPath().substring(idx); 
                  if (suffix.toLowerCase().equals(".jpg") || 
                      suffix.toLowerCase().equals(".jpeg") || 
                      suffix.toLowerCase().equals(".bmp") || 
                      suffix.toLowerCase().equals(".png") || 
                      suffix.toLowerCase().equals(".gif") ) { 
                      list.add(fi.getPath()); 
                  } 
          } 
       } 
       return list; 
     }

    2.获取sd卡下的图片并显示

     List<String> list = getPictures(Environment.getExternalStorageDirectory() + ""); 
     if (list != null) { 
        Log.d(TAG, "list.size = " + list.size()); 
        for (int i = 0; i < list.size(); i++) { 
            Bitmap bm = BitmapFactory.decodeFile(list.get(i)); 
            int top = 30; 
            if (i > 0) { 
                top += BitmapFactory.decodeFile(list.get(i - 1)).getHeight() + 2; 
            } 
            canvas.drawBitmap(bm, 0, top, paint); 
        } 
     } 
     else { 
        Log.d(TAG, "list is null!!!"); 
     }

        本文提供两个函数,第一个函数主要是获取SDCard中某目录下的所有图片,第二个函数主要是显示图片,希望本文对Android开发者有所帮助。

  • 相关阅读:
    记录ICallbackEventHandler 同时并发访问容易引发的问题
    IIS 属性
    Solaris10 安装
    VerifyRenderingInServerForm和EnableEventValidation引发的两个问题
    Solaris 上网配置
    动态数据类型转换
    RDLC 折线图
    codesmith复制中文乱码解决
    关于手机等品牌型号搜索与采集的中文分词分离
    说点包租公限制共享上网的破事
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4335216.html
Copyright © 2011-2022 走看看