0

クリックされたボタンに応じて StringArray リソースからデータが取り込まれる ListView を設計したいと考えています。ボタンがクリックされた後、配列名が取得され、「動的に」のように getStringArray メソッドに入れられます。

このメソッドを使用して、名前で識別子を取得しようとしています:

getResources().getIdentifier(String name, String defType, String defPackage);

しかし、クリックされたボタンIDと次のような他の文字列で構成される文字列として配列名を構築している場合:

Bundle extras = getIntent().getExtras();
Integer buttonId = extras.getInt("ButtonId");
String resourceName = "";
int resourceId = 0;

resourceName = "R" + buttonId.toString() + "WEEK" + "OUT";
resourceId = getResources().getIdentifier(resourceName, "array", this.getPackageName());

そのようなリソースがなく、getIdentifier メソッドが 0 を返すというエラーが表示されます (リソースの名前は、resourceName と同じ値に設定されます)。

4

0 に答える 0