どの画面にも合うようにプレーヤーの画像を調整するにはどうすればよいですか? 画面が小さい場合は画像が縮小され、画面が大きい場合は画像が大きくなります。
これが私が持っているコードで、動作しないコードです:
player.setScaleX( player.getContentSize().width / winSize.width );
player.setScaleY( player.getContentSize().height / winSize.height);
どの画面にも合うようにプレーヤーの画像を調整するにはどうすればよいですか? 画面が小さい場合は画像が縮小され、画面が大きい場合は画像が大きくなります。
これが私が持っているコードで、動作しないコードです:
player.setScaleX( player.getContentSize().width / winSize.width );
player.setScaleY( player.getContentSize().height / winSize.height);
親ビューの寸法が密度に依存しないと仮定すると、 imageView.setScaleType を CENTER_CROP または CENTER_INSIDE に使用して、画像をスケーリングできます。
http://developer.android.com/reference/android/widget/ImageView.ScaleType.html
編集** 画像を画面全体に合わせたい場合は、画像ビューを幅と高さの両方で fill_parent にしてから、その画像ビューの画像に適切なスケールタイプを使用するように設定します。独自のアルゴリズムが必要な理由がわからない..
編集***
これは標準的な問題です。複数の画面サイズをサポートし、適切にスケーリングします。基本的な考え方は、実際のピクセルを指定することを避け、代わりに密度に依存しないピクセルを使用することです。これを参照してください: http://developer.android.com/guide/practices/screens_support.htmlおよびこれ: http://developer.android.com/guide/practices/tablets-and-handsets.html
一般に、xml およびコードで「dp」単位を使用して単位を指定することになります (テキスト サイズ、幅/高さなど)。倍率。