web-dev-qa-db-ja.com

Androidさまざまな画面サイズのレイアウト

Androidアプリのレイアウトに苦労しています。画面サイズごとに異なるレイアウトを定義しましたが、現在のレイアウトディレクトリ構造は次のようになっています。

  • レイアウト
  • レイアウトランド
  • レイアウト-小さい
  • レイアウト-xlarge
  • レイアウト-xlarge-land

問題

非常に広い範囲である3.7 to 7.0のメインレイアウトディレクトリファイルが表示されています。また、小さな画面ではテキストが重なっていて、小さい画面で調整すると、大画面では非常に小さくなります。

私によると、レイアウトの小さなファイルは小さな画面用にレンダリングする必要がありますが、それらのファイルはAndroid Wearデバイス用にのみレンダリングされます。

layout-xlargeはNexus 9 to Nexus 10で機能するようです

知りたいのですが、3.7-5.05.0-7.0の画面サイズに異なるレイアウトを定義するにはどうすればよいですか。

7
Alena

答えはすでにuser5594218によって与えられていますが、まだ不明なようです。 (たぶんあなたは初心者です)

だから、ここにステップバイステップのガイドラインがあります

解決策1:(短くて単純)

  1. Navigateto app > src > main > res

  2. 複製レイアウトディレクトリをコピーして貼り付ける

  3. 名前の変更重複したディレクトリ(例:layout-sw300dp

解決策2:(ビット長)

  1. 新しいリソースディレクトリを作成します:res > New > Android resource directory

Create new resource directory

  1. 選択する Resource Type as layout

  2. 追加 sw<N>dpディレクトリ名(例:layout-sw300dp and Hit[〜#〜] ok [〜#〜]

enter image description here

  1. 案内する app > src > main > res

  2. 新しいディレクトリ内にレイアウトXMLファイルをコピーします

    //repeat process for other qualifiers
    

すべての画面をサポートする修飾子のリスト:

  • レイアウト-sw300dp
  • レイアウト-sw330dp
  • レイアウト-sw480dp
  • レイアウト-sw600dp
  • レイアウト-sw720dp

テスト:

あなたがそれを正しくやったならば、これはそれがどのように見えるかです。 enter image description here

詳細と例については、以下を確認してください。 Androidアプリケーション開発オールインワンFor Dummies

13
Atlas_Gondal

layout-sw300dp、layout-sw330dp、layout-sw480dp、layout-sw600dp、layout-sw720dpなどのフォルダーを作成し、valuesフォルダーもvalues-sw300dp、values-sw330dp、values-sw480dp、values-sw600dp、values-sw720dpを作成します。

3
MinnuKaAnae

ナビゲートアプリ->解像度->レイアウトを右クリックしてから[新規]->レイアウトリソースファイルにファイル名を正しく書き込み、使用可能な修飾子から必要なサイズを選択します。

1
user8961793

親愛なるあなたは様々な画面のレイアウトを宣言する必要はありません。画面ごとに1つのレイアウトを作成するだけで、レイアウトの幅と高さを固定しないでください。幅だけでなく、親とラップのコンテンツに一致する高さを維持する必要があります。

0
Farhana

画面サイズに依存しないため、layout-height/layout-width/textsizeでdp​​を試す必要があります。

0
Anuj Kumar