まず、目的のサイズに近いサイズでビットマップをロードするために、inJustDecodeBounds
およびサイズを使用するという推奨されるアプローチを認識しています。inSample
ただし、これはターゲットに近い画像のみを取得するかなり広範なアプローチです。
私は、ネイティブローダーを利用options.inDensity
して、画像をより正確に目的のターゲットサイズにスケーリングするように仕向けました。options.inTargetDensity
基本的にoptions.inDensity
、画像の実際の幅とoptions.inTargetDensity
目的の幅に設定すると、実際に目的のサイズの画像が得られます (この場合、縦横比はたまたま同じままです)。次にimage.setDensity(DENSITY_NONE)
、結果の画像を設定すると、すべて正常に動作するように見えます。
このアプローチに何か問題があることを知っている人はいますか? メモリ効率と画質について何か考えはありますか?