0

画面サイズ解像度 480x800px のアプリを作成しました (drawable-hdpi フォルダーにすべてのレイアウトと ImageButtons があり、px の代わりに dp を使用しました)。xml では、layout_marginLeft と marginTop を使用してすべてのボタンとすべてを配置しました。 .. 480x800 のエミュレーターでアプリを実行すると完璧ですが、画面サイズと解像度を変更すると、すべてのボタンが画面上の位置とサイズが変わります。すべての画面サイズと解像度に適合させるために何をすべきかわからないため、非常にイライラしています。任意のヒント?

フォルダごとにどのサイズを使用すればよいですか? hdpi で 480x800 を使用していますが、xhdpi で何を使用すればよいですか?

4

4 に答える 4

5

実際には簡単です。さまざまなサイズのレイアウトを追加し、Android に最適なものを選択させるだけです。eg-layout-small (小さい画面の場合)、layout-large (大きい画面の場合) など。Android が画面に応じて選択できるように、3 つのフォルダー (drawable-hdpi、drawable-ldpi、drawable-mdpi) にも画像を配置します。サイズ。http://developer.android.com/training/multiscreen/screensizes.htmlを参照してください。

于 2012-10-12T11:51:24.660 に答える
4

画面ごとに異なるレイアウトを維持する必要があります。例えば:

res/layout/my_layout.xml             // layout for normal screen size ("default")
res/layout-small/my_layout.xml       // layout for small screen size
res/layout-large/my_layout.xml       // layout for large screen size
res/layout-xlarge/my_layout.xml      // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation

res/drawable-mdpi/my_icon.png        // bitmap for medium density
res/drawable-hdpi/my_icon.png        // bitmap for high density
res/drawable-xhdpi/my_icon.png       // bitmap for extra high density

これをmanifest.xmlに追加します

<supports-screens android:smallScreens="true" 
      android:normalScreens="true" 
      android:largeScreens="true"
      android:xlargeScreens="true"
      android:anyDensity="true" />

このリンクを確認してください: http://developer.android.com/guide/practices/screens_support.html

最適な UI 設計のために、LinearLayout ではなく Relative レイアウトを維持する必要があります。

これを参照してください:

例: 1 つの画像を表示したい..次に、同じ画像を異なる画面用に異なるサイズで維持する必要があります。

36x36 for low-density
48x48 for medium-density
72x72 for high-density
96x96 for extra high-density

3:4:6:8 スケーリング比

于 2012-10-12T10:32:07.283 に答える
3

いくつかのコードを見ることができれば、本当に感謝しています。

たとえば、dp (密度ピクセル) のマージンRelativeLayoutなどの属性を使用すると、問題なく動作するはずです。android:layout_belowandroid:layout_marginTop="10dp"

ここで例を見ることができます。

于 2012-10-12T10:32:58.197 に答える
2

http://developer.android.com/guide/practices/screens_support.htmlhttp://developer.android.com/training/multiscreen/screensizes.html。リンク先をチェック。

于 2012-10-12T10:34:51.153 に答える