Android アプリケーションでリソースのフィールドを取得しようとすると、例外が発生します。ドローアブルIDにアクセスする正しい方法のようです。何が間違っている可能性がありますか?
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 クラスにあります。リソースへのアクセスはアクティビティの外で制限されているように見えるので、言及したいと思いました。