我想通過一個字符串找到一種設置imageview的方法。看來,getResources()已被棄用,我似乎無法找到傳遞字符串並將圖像加載到imageView的快速方法。我沒有任何工作或有用的代碼來呈現,我只是要求研究方法。 謝謝!從Android Studio中的字符串中獲取可繪製對象
回答
由theMatus的答案是正確的。通過int
標識符訪問可繪製的圖形(即R.drawable.some_image
將具有相應的int
值)。要轉換String
到這樣一個值,你可以使用Resources.getIdentifier()
:
String mDrawableName = "some_image";
int resId = getResources().getIdentifier(mDrawableName , "drawable", getPackageName());
要訪問Drawable
,你會使用getResources().getDrawable(resId)
。 getResources()
不被棄用的方式,雖然getDrawable(int id)
在技術上是API 22(它仍然會工作)。如果你想正確看待這一點,並得到各地棄用,你可以使用以下命令:
@TargetApi(Build.VERSION_CODES.LOLLIPOP_MR1)
private Drawable getDrawableForSdkVersion(int resId, Resources res) {
Drawable drawable = null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) {
drawable = res.getDrawable(resId, null);
} else {
drawable = res.getDrawable(resId);
}
return drawable;
}
使用API 22'getResources()'已棄用。你可以使用它,它也向後兼容,所以你可以安全地移動到這個方法。
ContextCompat.getDrawable(context, R.drawable.<you_name_it>)
更新:
也忘了提,你可以用畢加索加載您的字符串(旨在圖片的路徑)到imageviews。
這裏一個小例子:
ImageView imageView1 = (ImageView) findViewById(R.id.myImageView);
Picasso.with(getApplicationContext()).load("www.pictures.com/picture.jpg").into(imageView1);
可以使畢加索一個小的搜索位置:http://square.github.io/picasso/
何況,但#1 Android應用程序也使用這個庫,必須具備的圖書館之一在Android中。
謝謝,但我將如何動態訪問我的圖像?我想通過一個字符串,而不是靜態的 – user1519194
我更新了答案,畢加索將幫助您 – 2016-02-13 08:29:01
我允許使用畢加索商業嗎?我無法告訴 – user1519194
ImageView imgView = (ImageView) findViewById(R.id.imageView);
imgView.setImageDrawable(ContextCompat.getDrawable(currentActivity.this,R.drawable.your_image));
其實theMatus回答你的問題。此代碼適用於不推薦使用的問題。
- 1. Android:如何從繪製的線中獲取點的字符串?
- 2. Android獲取可繪製的圖像路徑作爲字符串
- 3. 從字符串Android中獲取JSON對象
- 4. 是否有可能從DateInterval對象中獲取「interval_spec」字符串?
- 5. 從字符串獲取NSDate對象
- 6. 從字符串獲取對象值
- 7. 從yahoo管道中的數組\對象中獲取字符串?
- 8. Android:我無法從我的對象獲取字符串
- 9. 從DRF中的令牌字符串獲取用戶對象?
- 10. 從Java中的JSON數組對象獲取字符串值
- 11. 從C#中的字符串名稱獲取Class對象#
- 12. 從javascript中的字符串名稱獲取對象類
- 13. 從Json對象獲取字符串值Android
- 14. 從字符串中讀取字符或從字符串中獲取字符
- 15. 我可以從JPA查詢對象獲取SQL字符串嗎?
- 16. 如何從字符串中獲取對象?
- 17. 如何從對象數組中獲取json字符串
- 18. 從JSON字符串中獲取json對象
- 19. 如何從jQuery對象中獲取json字符串?
- 20. 如何從字符串中獲取對象 - 導軌
- 21. 任何方式從這個字符串中獲取DateTime對象?
- 22. 從字符串名稱中獲取JavaScript函數對象?
- 23. 如何從JSON字符串中獲取Java對象
- 24. iOS從json字符串中獲取json對象
- 25. 從包含類對象的靜態最終對象[]中獲取字符串值
- 26. 是否有可能從不在DOM中的html字符串獲取jQuery對象?
- 27. 從對象,它是一個字符數組(不是對象[])獲取字符串
- 28. 如何從可繪製對象獲取圖像名稱?
- 29. 從數組中的對象中提取一個字符串:PHP
- 30. 從c中的對象中提取一個字符串數組#
對不起,這個問題對我來說毫無意義。你能指出我確切的哪個getResources被棄用的文檔嗎?你打算如何將字符串轉換爲圖像? –
這裏是一個例子: http://stackoverflow.com/questions/5254100/how-to-set-an-imageviews-image-from-a-string 我有我想要訪問的圖像的名稱,所以我希望通過他們的名字從drawable中獲取它們。 – user1519194
我無法在文檔中看到有關'getResources()'被棄用的任何內容:http://developer.android.com/reference/android/content/Context.html#getResources() – PPartisan