[android] リソースIDを取得

リソースIDを取得

Drawable内の画像などを動的に取得するためにリソースIDを下記のように取得する

String packageName = getPackageName();//packageName取得
int imageId = getResources().getIdentifier("fileName", "drawable", packageName); //リソースIDのを取得
ImageView imageView = (ImageView)view.findViewById(R.id.imageview); //imageview取得
imageView.setImageResource(imageId); //画像のリソースIDで画像表示

ちなみにFragment内ではgetPackageName()でPackeage名が取得できないので

//packageName取得
View myView = inflater.inflate(R.layout.fragment_main, container, false);
String packageName = myView.getContext().getPackageName();
int imageId = getResources().getIdentifier("fileName", "drawable", packageName); //リソースIDのを取得
ImageView imageView = (ImageView)view.findViewById(R.id.imageview); //imageview取得
imageView.setImageResource(imageId); //画像のリソースIDで画像表示

とする

コメントを残す

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