1. ホーム
  2. java

[解決済み] 既知のリソース名でリソースIDを取得する方法は?

2022-04-18 17:16:53

質問

StringやDrawableのようなリソースに、int型IDではなく名前でアクセスしたいのですが。

この場合、どのメソッドを使用すればよいのでしょうか?

どのように解決するのですか?

というようなものになります。

R.drawable.resourcename

がないことを確認してください。 Android.R 名前空間がインポートされていると、Eclipse を混乱させる可能性があります (使用している場合)。

それでもうまくいかない場合は、コンテキストの getResources メソッドを使用します.

Drawable resImg = this.context.getResources().getDrawable(R.drawable.resource);

ここで this.context はイニシャルが Activity , Service またはその他の Context のサブクラスを作成します。

更新しました。

希望する名前であれば Resources クラスが返されます。 getResources() ) には getResourceName(int) メソッド、および getResourceTypeName(int) ?

アップデート2 :

Resources クラスにはこのメソッドがあります。

public int getIdentifier (String name, String defType, String defPackage) 

指定されたリソース名、タイプ & パッケージの整数を返します。