アプリ用に複数のリソースを作成する必要があります。Android には 4 つの解像度 (ldpi、mdpi、hdpi、xhdpi) と 4 つの一般的な画面サイズ (小、中、大、特大) があります。したがって、画面サイズをサポートするには、4 つのレイアウト (タブレットをサポートする予定がない場合は 3 つ) を作成する必要があります。タブレットは特大のカテゴリに分類されるためです。
一般的なガイドは次のとおりです。
次のように、小、中、大、特大のレイアウトを res/ フォルダーに配置します。
res/layout/sample_layout.xml // default layout
res/layout-small/sample_layout.xml // layout for small screen size
res/layout-large/sample_layout.xml // layout for large screen size
res/layout-xlarge/sample_layout.xml // layout for extra large screen size
あなたも使うことができます
res/layout-land/sample_layout.xml
すべての画面サイズの横向きの場合、または特定の画面サイズの横向きレイアウトを次のようにターゲットにすることができます。res/layout-medium-land/sample_layout.xml
すべてのレイアウトが同じ名前であることに注意してください。
レイアウトの準備ができたら、画像の解像度にも注意する必要があります
もう一度 res/ フォルダーに次のような画像を追加します。
res/drawable-ldpi/sample_image.png // low density
res/drawable-mdpi/sample_image.png // medium density
res/drawable-hdpi/sample_image.png // high density
res/drawable-xhdpi/sample_image.png // extra high density
繰り返しますが、すべての画像は同じ名前です。
イメージをデザインするための一般的なガイドラインは次のとおりです。
ldpi is 0.75x dimensions of mdpi
hdpi is 1.5x dimensions of mdpi
xhdpi is 2x dimensinons of mdpi
通常、私は 320x480 画面用に mdpi 画像を設計し、上記のルールに従って寸法を乗算して、他の解像度用の画像を取得します。
Android は、デバイスに応じてレイアウトと画像の最適な組み合わせを自動的に選択します。たとえば、高解像度の中サイズのデバイスの場合、レイアウト中程度の高密度の画像がユーザーに表示されます。
これらすべての組み合わせに対してエミュレーターを作成し、アプリを徹底的にテストしてください。詳細については、公式ドキュメントをご覧ください。
https://developer.android.com/guide/practices/screens_support.html
測定単位については、density independent pixels (dp or dip)
複数の解像度で相対的な高さ、距離などを安定した方法で維持するものを使用できます。