各位Android安卓開發者大家安安大家好 ^^
|
今天小黑人要與大家分享的是"讀取Assets資料夾圖片",原因就是在開發過程中不一定每個圖片資源都會擺放在Resources裡的Drawable資料夾內,可能會有許多不只是圖片檔案或音訊檔案放入Assets資料夾,例如HTML靜態資料或文字檔案或文字字型...等會擺放附加在Assets資料夾內,那Assets資料夾內的檔案要怎麼讀取呢?小黑人今天就以讀取圖片為例子與大家分享簡單快速的方法。
|
|
1.讀取Assets資料夾內的檔案只需要在程式裡(.java)撰寫即可。 |
public class MainActivity extends Activity
{
private ImageView img;
private Button btn;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//顯示Assets資料夾圖片的ImageView與進行讀取Assets資料夾圖片的Button
img = (ImageView) findViewById(R.id.img);
btn = (Button) findViewById(R.id.assets);
btn.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
//帶入Assets資料夾內的圖片路徑(Assets資料夾: android資料夾/black圖片)
img.setImageBitmap(getBitmapFromAssets("android/black.png"));
}
});
}
//讀取Assets資料夾圖片,型態為Bitmap
private Bitmap getBitmapFromAssets(String file)
{
try
{
AssetManager am = getAssets();
InputStream is = am.open(file);
return bitmap;
}
catch (IOException e)
{
e.printStackTrace();
return null;
}
}
} |
|
以上就是讀取並顯示Assets資料夾內圖片的實作程式碼,大家可以參考看看唷 ^^
如有任何問題都可以和小黑人一起交流討論喔~謝謝大家~! XDD |
|
getBitmapFromAssets return bitmap 不可能吧
回覆刪除您好,很抱歉這麼久才回覆您,
刪除您的疑問是getBitmapFromAssets這個方法吧?
return bitmap是可以的喔,
因為getBitmapFromAssets方法形態是bitmap,所以必須回傳bitmap,
然後藉由AssetManager取得Assets資料夾內的資料,
前提當然要帶入圖片格式檔案的路徑就可以囉(其他檔案格式就不行,如文字檔...),
感謝您的留言!
InputStream 沒轉成 Bitmap 怎麼 return
回覆刪除