私のアプリケーションでは、ほとんどのデバイスで、リソース ファイルに存在するビットマップを正確に読み込んで表示することに関心があります。
options.inScaled = false;
backgroundImage = BitmapFactory.decodeResource(getResources(), R.drawable.demo_frame, options);
特定の (小さい) デバイスでは、ビットマップのサイズを縮小したいので、次のように呼び出します。
backgroundImage = Bitmap.createScaledBitmap(backgroundImage, Scale(backgroundImage.getWidth()), Scale(backgroundImage.getHeight()), false);
ここで、Scale 関数は倍率を適用して画像を縮小します。返されたビットマップは、getWidth() 関数と getHeight() 関数で必要な値を示していますが、画像は元のサイズ、つまり倍率なしで表示されます。これは options.inScaled パラメーターと関係があると思いますが、ドキュメントは私を啓発しませんでした。誰かがinScaledパラメータのより詳細な説明を与えることができますか?この場合、どのようにオーバーライドできますか? ありがとう。