電話のファイルシステムに保存されているフルサイズの画像ファイルと、ListView
. 私は基本的に、SO とここでもよく議論されるサブサンプリング手法を使用します。
リンクで概説されている方法では、サブサンプリングが機能するために、ターゲットの幅と高さをピクセル単位で指定する必要があります。私のリスト ビューでは、サムネイルの幅/高さがディメンション リソースとして定義され、簡単にピクセルに変換されるため、これで問題ありません。これらImageView
が読み込まれる は、scaleXY
スケール タイプを使用します。
リストビューに加えて、選択した画像を画面上部のバナーとして表示したい別の詳細ビューがありますが、center
(サイズ変更なし) のスケールタイプを使用しています。ターゲットImageView
はRelativeLayout
、固定の高さ (リソース領域で設定) の 内にあり、幅は に設定されていfill_parent
ます。
だから私は3つの質問があります:
scaleType
バナー画像 (が に設定されている)に対して特別なサイズ変更を行いたくない場合center
、サブサンプリング手法はここでも適用できますか?- #1 に対する答えがyesの場合、ターゲット ビューの幅を計算できる必要があります。ターゲットの幅 (高さとは異なり) は
ImageView
サムネイル ビューのように固定されていないため、最終的に有効な幅を見つけるにはどうすればよいfill_parent
ですか? - #1 に対する答えがno の場合、メモリ例外の危険を冒さずに、このイメージをビューに効率的にロードするにはどうすればよいでしょうか?
ありがとう!