我在嘗試獲取Android應用程序中的資源字段時收到異常。這似乎是正確的方式來訪問一個可繪製的ID。任何建議可能是錯誤的?使用getField訪問資源
04-09 22:45:59.816: W/System.err(5014): java.lang.NoSuchFieldException: lumiere
在我的res/drawable文件夾中,我有「lumiere.jpg」。從R.java:
public static final class drawable {
[...]
public static final int lumiere=0x7f02000a;
方法調用:
Class c = R.drawable.class;
field = c.getField(name);
i = new Integer(field.getInt(null));
我不認爲這事情,是一個靜態類方法調用,但以防萬一它 - 上面的代碼是在普通的Java類,而不是一個Activity。只是覺得我會提到,因爲訪問資源似乎限制在活動之外。
感謝您的建議,但事實並非如此。 實際上,您無法使用此方法從普通Java類訪問資源。 – Marc 2012-04-09 23:17:26
是不是你爲了得到價值而做的或多或少的事情? – waqaslam 2012-04-09 23:25:27
不知道我明白。也許我上面的陳述措辭不好。如果我的帖子中的代碼放置在Activity類中,但不在標準的Java類中,則我的帖子中的代碼可以工作。我認爲這是由於缺乏背景。 – Marc 2012-04-09 23:50:42