在做項目的過程中,遇到了一個需求,在Android代碼里可以通過圖片的ID動態載入圖片。要載入Android文件夾裡面的圖片,我們就要知道它的ID,要動態獲取,那麼就得動態獲取圖片的ID。 那麼應該怎麼做呢? 我們可以用 接下來我們講講動態獲取其他資源ID的方法 1、 獲取佈局資源ID int la ...
在做項目的過程中,遇到了一個需求,在Android代碼里可以通過圖片的ID動態載入圖片。要載入Android文件夾裡面的圖片,我們就要知道它的ID,要動態獲取,那麼就得動態獲取圖片的ID。
那麼應該怎麼做呢?
Resources res=getResources(); String packageName =getPackageName(); imageView.setImageBitmap(BitmapFactory.decodeResource(res,res.getIdentifier(pracData.getQuestion(),"drawable",packageName)));
我們可以用
res.getIdentifier(String str,"drawable" ,packageName)這個方法來獲取圖片的ID。
str為圖片的名稱,比如圖片為a.png,那麼str就為a。
drawable為存放圖片的文件夾。
packageName為activity所在的包名。
接下來我們講講動態獲取其他資源ID的方法
1、 獲取佈局資源ID
int layoutId = getResources().getIdentifier("activity_main", "layout", getPackageName());
2、獲取圖片資源(mipmap文件中)
int mipmapId = getResources().getIdentifier("ic_launcher", "mipmap", getPackageName());
3、獲取字元資源
int stringId = getResources().getIdentifier("author", "string", getPackageName());