我遇到以下問題。我想寫一個隨機生成器,它爲我提供了一個隨機圖像R.id.drawable
...所以我做了一個隨機生成器,現在它正在選擇一個隨機字符串。但問題是:我無法繪製它,因爲我必須提供R.id.drawable.xxxx
作爲整數變量而不是字符串。由於這是一個整數的名稱,因此我無法將其與Integer.Parse()
進行轉換; 有沒有解決方案或有人知道如何選擇一個隨機整數?提前致謝。Java如何將字符串轉換爲整數名稱
0
A
回答
3
將所有可繪製值放入數組drawables
。然後在0和drawables.length
之間生成一個隨機值value
,並通過drawables[value]
訪問它。
另外,我覺得你的意思是:
R.drawable.xxxx
相反的:
R.id.drawable.xxxx
0
注意,變量名僅可在編譯時,不運行時。這意味着您需要爲您的問題找到完全不同的解決方案。
一種可能性是switch語句。假設你有2張圖片。你可以這樣做:
int imageId = -1;
switch(Math.Random(2)) {
case 1:
imageId = R.drawable.image1;
break;
case 2:
imageId = R.drawabel.image2;
break;
}
0
考慮這個例子的R文件。
public static final class id {
public static final int s1=0x7f050000;
public static final int s10=0x7f050009;
public static final int s11=0x7f05000a;
public static final int s12=0x7f05000b;
public static final int s13=0x7f05000c;
public static final int s14=0x7f05000d;
public static final int s15=0x7f05000e;
public static final int s16=0x7f05000f;
public static final int s2=0x7f050001;
public static final int s3=0x7f050002;
public static final int s4=0x7f050003;
public static final int s5=0x7f050004;
public static final int s6=0x7f050005;
public static final int s7=0x7f050006;
public static final int s8=0x7f050007;
public static final int s9=0x7f050008;
}
然後嘗試使用下面的代碼瀏覽..
import java.lang.reflect.Field;
/* ... */
for (int i = 1; i < 16; i++) {
int id = R.id.class.getField("s" + i).getInt(0);
//do something here
}
使用自己的邏輯選擇一個隨機的。
指這個問題How do I iterate through the id properties of R.java class?
0
您也可以使用該字符串得到標識符。
例如,只有它的字符串名稱來獲得R.drawable.ic_launcher的整數值,你可以這樣做:
getResources().getIdentifier("ic_launcher", "drawable", getPackageName());
相關問題
- 1. Java將字符串轉換爲整數
- 2. 將字符串轉換爲類名稱
- 3. 如何將字符串轉換爲函數名稱
- 4. 在PHP中,如何將參數名稱轉換爲字符串
- 5. 如何將DataFrame的列名從字符串轉換爲整數?
- 6. 如何將大型字符串轉換爲java中的整數?
- 7. 如何將包含月份名稱的字符串轉換爲整數?
- 8. 如何將字符串值轉換(或轉換)爲整數值?
- 9. 如何整數轉換爲字符串
- 10. 如何將字符轉換爲完整的Unicode名稱?
- 11. 將字符串轉換爲整數
- 12. Swift:將字符串轉換爲整數
- 13. 將字符串轉換爲整數
- 14. 將字符串轉換爲整數
- 15. 將字符串轉換爲整數
- 16. 將字符串轉換爲整數?
- 17. 將字符串轉換爲整數
- 18. 將整數轉換爲字符串
- 19. 將字符串轉換爲整數
- 20. 將整數值轉換爲字符串
- 21. 將整數轉換爲字符串-mysql
- 22. 將JavaScript字符串轉換爲整數
- 23. 將字符串值轉換爲整數
- 24. 將字符串轉換爲整數?
- 25. 將整數轉換爲字符串
- 26. 將字符串轉換爲整數
- 27. 將字符串轉換爲整數Android
- 28. 將字符串轉換爲整數
- 29. 將整數轉換爲字符串
- 30. 將字符串轉換爲整數