實現如何Android 獲得圖片的總結

jopen 11年前發布 | 24K 次閱讀 Android Android開發 移動開發

接下來讓我解說一下,實現如何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);

//若只知道圖片的名稱,可以通過圖片的名稱獲得圖片的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);

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!