android扫描SDcard的目录的图片

foodAdpter adpter= new foodAdpter(MainActivity.this,R.layout.food,foodlist);

inttfood();

foodTypeAdpter adpter2 = new foodTypeAdpter(MainActivity.this,R.layout.foodtype,foodtypelist);


GridView gridview = (GridView)findViewById(R.id.GridView1);


ListView listview = (ListView) findViewById(R.id.ListView1);


gridview.setAdapter(adpter);
//listview.setAdapter(adpter2);

}

// 取foodImage中的图片

private List<String> getImagePathFromSD() { 
List<String> imagePathList = new ArrayList<String>();  
String filePath = Environment.getExternalStorageDirectory().toString() + File.separator  + "foodImage";  
File fileAll = new File(filePath);  
File[] files = fileAll.listFiles(); 
for (int i = 0; i < files.length; i++) 
{  
File file = files[i];  
if (checkIsImageFile(file.getPath()))
{  
imagePathList.add(file.getPath());  
}
}
return imagePathList;  

}

//获取文件名
private List<String>getImageNameFromSD()
{
List<String>imageName = new ArrayList<String>();
String filePath = Environment.getExternalStorageDirectory().toString() + File.separator  + "foodImage";  
File fileAll = new File(filePath);  
File[] files = fileAll.listFiles(); 
for (int i = 0; i < files.length; i++) 
{
File file = files[i];
if (checkIsImageFile(file.getPath()))
{  
imageName.add(file.getName());  
}
}
return imageName;
}


//压缩图片
private Bitmap compressImage(String ImagePath) //压缩图片,防止内存溢出
{
BitmapFactory.Options opt = new BitmapFactory.Options();
opt.inPreferredConfig = Config.RGB_565;
opt.inPurgeable = true;
opt.inInputShareable = true;
Bitmap tmpbmp = BitmapFactory.decodeFile(ImagePath, opt); 
//Bitmap tmpbmp = BitmapFactory.decodeStream(is,null, opt);
return tmpbmp;
}

//判断图片
private boolean checkIsImageFile(String fName) {  
boolean isImageFile = false;  
// 获取扩展名  
String FileEnd = fName.substring(fName.lastIndexOf(".") + 1,  
fName.length()).toLowerCase();  
if (FileEnd.equals("jpg") || FileEnd.equals("png") || FileEnd.equals("gif")  
|| FileEnd.equals("jpeg")|| FileEnd.equals("bmp") ) {  
isImageFile = true;  
} else {  
isImageFile = false;  
}  
return isImageFile;  
}  

//初始化

private void inttfood() {


for(int i = 0;i<getImagePathFromSD().size();i++)
{
String foodName=getImageNameFromSD().get(i).substring(0, getImageNameFromSD().get(i).length() - 4);
Bitmap foodImage = compressImage(getImagePathFromSD().get(i));
food i1 = new food(foodName,foodImage);
foodlist.add(i1); 
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值