ViewFlipper があり、最初の View を複数回インフレートして、各子で同じレイアウトを取得します。
ロードしたいアセットフォルダーにいくつかの画像を入れて、ViewFlipper の各子に入れます。
私の問題は、これらの画像が膨張した ImageView ほど大きくないことです。アセット内のすべての画像は同じサイズの 450x450 です。
アセットからロードされたときに、ロードされた画像が縮小されるのは正常ですか? それとも別の場所に問題がありますか?
ドローアブル ディレクトリに画像を配置できることはわかっていますが、アセットに画像を配置したいと考えています。
for(int i =0;i< createArray();i++){
flipper.setDisplayedChild(i);
ImageView pic = (ImageView) flipper.getCurrentView().findViewById(R.id.ImageView01);
ImageView pic2 = (ImageView) flipper.getCurrentView().findViewById(R.id.ImageView02);
try {
Drawable d1 = Drawable.createFromStream(getAssets().open("product-overview"+File.separator+"psu"+File.separator+fileNames[i]+File.separator+"product_pic_full.png"), null);
Drawable d2 = Drawable.createFromStream(getAssets().open("product-overview"+File.separator+"psu"+File.separator+fileNames[i]+File.separator+"product_pic_background.png"), null);
pic.setImageDrawable(d1);
pic2.setImageDrawable(d2);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
説明として:アセットから動的に写真をロードします。概要がはるかに優れているため、資産フォルダーにはサブフォルダーがあります。それらをロードすると、すべての ViewFlipper-child が独自の画像を取得します: フロントサイドとバックサイド。すべてが正常に機能しています。ただし、画像はアセットの画像のように 450x450 ではありません。
ビューを変更するのは良い方法ではないかもしれません。しかし、それは私にとってはうまくいきます。