Android - すべての画面解像度で画像が中央に表示されます
-
25-09-2019 - |
質問
現在、SDK 1.5を使用してAndroidアプリケーションを開発し、HTC Heroでアプリケーションをテストしています。そのファームウェアはAndroid 1.5です。
実際の点に移りましょう:アプリケーションでは、画像を表示するための imageview (画像解像度は 320*480) を使用しています。現在、imageview は画像を全画面で完全に表示していますが、HTC EVO 4G (解像度 480*800) でテストしようとすると、 、画像が伸びてしまいます。
それで、私がやりたいのは、すべての画面解像度のモバイルで320 * 480の解像度の画像を表示したいということですか?つまり、モバイルの解像度が高い場合(つまり、480*800 、 480*854 、またはその他)の画像が画面の「中央」部分に表示されるはずです。
それで、320*480 以外の解像度で (引き伸ばしたり切り取ったりせずに) 全画面で画像を中央に表示するには、どのような属性を設定する必要がありますか?
解決
単に設定するだけです scaleType
ImageView の属性。ここで可能な値は次のとおりです。 ImageView.ScaleType
使いたいかもしれません CENTER
.
さらに、別の問題にも直面します。mdpi イメージが Android システムによって自動的に hdpi にスケールアップされないように、mdpi イメージに加えて hdpi イメージを提供する必要があります。詳細については、こちらをご覧ください。 http://developer.android.com/guide/topics/resources/providing-resources.html
編集:ああ、あと忘れるところだった:「drawable-mdpi」フォルダーと「drawable-hdpi」フォルダーは、少なくとも Android 1.6 に対してプロジェクトをビルドする場合にのみ使用できます。したがって、設定する必要があります minSdkVersion
3とあなたの targetSdkVersion
Android 1.5 が追いつくために、画像を通常の「drawable」フォルダーに配置します。詳細については、Google I/O 2010 のこのビデオをご覧ください。 すべての Android デバイスに広範囲に網を張ります.