ホームページ >Java >&#&チュートリアル >「getIdentifier()」を使用して名前で Android リソースを取得するにはどうすればよいですか?

「getIdentifier()」を使用して名前で Android リソースを取得するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-21 16:56:14736ブラウズ

How to Retrieve Android Resources by Name Using `getIdentifier()`?

名前によるリソースの取得

整数 ID ではなく名前を使用して文字列やドローアブルなどのリソースにアクセスすると、アプリケーション開発の柔軟性が高まります。これを実現するには、Resources クラスの getIdentifier() メソッドが使用されます。

getIdentifier() の構文は次のとおりです。

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

ここで、

  • name は、リソースタイプのプレフィックスを除いたリソースの名前です (例: "myString")
  • defType は、「drawable」や「string」などのリソースのタイプです
  • defPackage は、リソースが定義されているパッケージの名前です

たとえば、次の名前の画像の Drawable リソース ID を取得するには、 "my_image.png":

int drawableResourceId = this.getResources().getIdentifier("my_image", "drawable", this.getPackageName());

同様に、"welcome_text" という名前の値の文字列リソース ID を取得するには:

int stringResourceId = this.getResources().getIdentifier("welcome_text", "string", this.getPackageName());

この方法でリソース ID を取得することは可能であることに注意してください。整数 ID を直接使用するよりも遅くなります。したがって、リソース名が動的である場合、またはプログラムによるアクセスが必要な場合は、慎重に使用する必要があります。

以上が「getIdentifier()」を使用して名前で Android リソースを取得するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。