AndroidのImageButtonで画像を動的に設定したい。しかし、私は200以上の画像を持っています。そのための良い解決策は何でしょうか?
最良のアイデアは、画像の名前を使用して別の画像を呼び出すことができるということです。つまり、imagebutton.setImage( "/ res / abc.png"); しかし、そうすることは簡単ではないように思えます。これらの問題を解決するのを手伝ってください。
AndroidのImageButtonで画像を動的に設定したい。しかし、私は200以上の画像を持っています。そのための良い解決策は何でしょうか?
最良のアイデアは、画像の名前を使用して別の画像を呼び出すことができるということです。つまり、imagebutton.setImage( "/ res / abc.png"); しかし、そうすることは簡単ではないように思えます。これらの問題を解決するのを手伝ってください。
リソース フォルダー内の画像を取得できます。その後、次の簡単なコードに従います。
try {
Class<drawable> res = R.drawable.class;
if(str!=null){
Field field = res.getField(str);
int drawableId = field.getInt(null);
bengalidaypng.setImageResource(drawableId);
}
}
catch (Exception e) {
System.out.println("Image not found in drawable folder");
}
より詳細なサンプルはこちらにあります。
Typed Arrayリソースを使用できます。リンクの最後に、ドローアブル (画像) に使用する方法の例があります。
編集:
リソースには生データとしてアクセスできます: AssetManager.open(..) を使用します。次に、BitmapFactory.decodeStream(..)を使用して、データ ストリームからビットマップを作成できます。
画像をデータベースに保存し、各行をバインドするときに画像を ListView にプルすることができます。