获取SD卡根目录下图片的方法

1.获取某个目录下图片路径list

2.调用上述方法获取sd卡下的图片并显示

 

发布了270 篇原创文章 · 获赞 276 · 访问量 379万+
展开阅读全文

怎么把List里的所有图片显示出来,代码如下。希望大神们能在给的代码里增删。小白哈

08-07

public class MainActivity extends AppCompatActivity { // 图片和id列表 private List<Object> picList = new ArrayList<Object>(); private Bitmap b; private String name; private ListView Lv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); getImagePathFromSD(); Lv= (ListView) findViewById(R.id.lv); Lv.setAdapter(new MyAdapter()); } private class MyAdapter extends BaseAdapter{ @Override public int getCount() { return picList.size()/2; } @Override public Object getItem(int position) { return null; } @Override public long getItemId(int position) { return 0; } @Override public View getView(int position, View convertView, ViewGroup parent) { View view; if (convertView==null){ view= View.inflate(getApplicationContext(),R.layout.item,null); }else { view=convertView; } //找到数据来显示 ImageView iv_potoes= (ImageView)view.findViewById(R.id.imageView1); TextView tv_name= (TextView) view.findViewById(R.id.tvname); //picList.get(position); iv_potoes.setImageBitmap(b); tv_name.setText(name); tv_name.setTextColor(Color.RED); return view; } } // 从sd卡获取图片资源 private List<Object> getImagePathFromSD() { // 得到sd卡内路径 String imagePath =Environment.getExternalStorageDirectory().toString() + "/nongbang"; // 得到该路径文件夹下所有的文件 File mfile = new File(imagePath); File[] files = mfile.listFiles(); // 将所有的文件存入ArrayList中,并过滤所有图片格式的文件 for (int i = 0; i < files.length; i++) { File file = files[i]; if (checkIsImageFile(file.getPath())) { //获取图片 b=BitmapFactory.decodeFile(file.getPath()); picList.add(b); //获取文件名 String houzuiname=file.getName(); name=houzuiname.substring(houzuiname.lastIndexOf(0)+1,houzuiname.lastIndexOf(".")).toLowerCase(); picList.add(name); } } // 返回得到的图片列表 return picList; } // 检查扩展名,得到图片格式的文件 private boolean checkIsImageFile(String fName) { boolean isImageFile = false; // 获取扩展名 String FileEnd = fName.substring(fName.lastIndexOf(".") + 1,fName.length()).toLowerCase(); if (FileEnd.equals("jpg") || FileEnd.equals("gif")|| FileEnd.equals("png") || FileEnd.equals("jpeg")|| FileEnd.equals("bmp")) { isImageFile = true; } else { isImageFile = false; } return isImageFile; } /* 这里面我只能显示输入到List的最后一组,请问大佬们怎么修改让TextView能够把第一张到最后一张都显示出来啊 */ 问答

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览