【Android】getResourcesメソッドを使って変数名からリソースIDを取得する

動的な値によって、表示したいリソース(データ等)を変化させたい場合、

set○○○○○(R.○○○○○.○○○○○);

でリソースIDを固定する事ができない。

こういった場合、変数名からリソースIDを取得する必要がある。
getResourcesメソッドを利用してリソースID名を変数化してからリソースを取得する。

int strId = 
getResources().getIdentifier("リソースID名", "データ型", "パッケージ名");

【getResourcesメソッド使用例】

String text_name = "id" + 1;
int strId = 
getResources().getIdentifier("text_name", "id", getPackageName());
TextView put_txt = (TextView)findViewById(strId);
put_txt.setText("東京都");

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>