读书人

关于android取得图片的总结

发布时间: 2012-09-10 11:02:32 作者: rapoo

关于android获得图片的总结

1,已将图片保存到drawable目录下?
通过图片id获得Drawable?
Resource res=gerResource();?
Drawable drawable=res.getDrawable(id);//id为R.drawable.图片名称?

通过图片id获得Bitmap
Resource res=gerResource();?
Bitmap bitmap=BitmapFactory.decodeResource(res, id);?

c)若只知道图片的名称,可以通过图片的名称获得图片的id?
//name:图片的名称 defType:图片的类型(png,jpeg),defPackage:工程的包名?
int id =int id =res.getIdentifier(name, defType, defPackage);?
获得id之后可以根据你的需要来获得Bitmap或Drawable?

2,已将图片保存到assest目录下?
[知道图片的名称,通过inputstream打开图片
AssetManager asm=getAssetMg();?
InputStream is=asm.open(name);//name:图片的名称?

//获得Drawable?
Drawable da = Drawable.createFromStream(is, null);?
//获得Bitmap?
Bitmap bitmap=BitmapFactory.decodeStream(is);?

3,图片保存在sdcard,已知图片的路径?
//图片路径?
String path = Environment.getExternalStorageDirectory().toString()?
+ "/DCIM/device.png";?
RandomAccessFile mMiniThumbFile;?
File imgfile = new File(path);?
try {?
mMiniThumbFile = new RandomAccessFile(imgfile, "rw");?
} catch (IOException ex) {?
// Open as read-only so we can at least read the existing?
// thumbnails.?
try {?
mMiniThumbFile = new RandomAccessFile(imgfile, "r");?
} catch (IOException ex2) {?
// ignore exception?
System.out.println(ex2.toString());?
}?
}?

data= new byte[10553];?
try {?
mMiniThumbFile.seek(0);?
int got =?mMiniThumbFile.read(data, 0, 10552);?
System.out.println("got="+got);?

} catch (IOException e) {?
// TODO Auto-generated catch block?
e.printStackTrace();?
System.out.println(e.toString());?
}?

if (data != null) {?
//通过data获得bitmap?
Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0,?
data.length);?

?

原帖:http://aijiawang-126-com.iteye.com/blog/610357

读书人网 >Android

热点推荐