1

Android でさまざまな画面サイズをサポートする最善の方法は、画面サイズごとに異なるレイアウトを作成することです。

電話アプリをテーブル サイズの画面に拡大できることはわかっています。res/layout-xlarge-landレイアウトを Nexus 7 に合わせて縮小できるかどうか知りたいこと。 マニフェストに次のように記述しました。

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

ただし、Nexus 7 はまだres/layout-largeフォルダー内のレイアウトを想定しており、 res/layout-xlarge-landフォルダー内のレイアウトを使用しません。res/layout-xlarge-landフォルダーをres/layout-largeフォルダーにコピーすると、縮小されません。

マニフェストであらゆる種類のさまざまなオプションを試しましたが、機能させることができませんでした。スケールダウンは可能ですか?

編集:

largeNexus 7 用のレイアウトを作成してから、そのデバイス用の特定のレイアウトを作成するのが適切な方法であることはわかっています。しかし、私はスケジュールに取り組んでおり、デザインに影響を与えることはできません (これは 10 インチ タブレット用に設計されています)。そのため、私は 7 インチ タブレットで電話のデザインを使用することを余儀なくされています。

マニフェストで指定されている場合、Android Phone 専用のアプリをより大きな画面に合わせてスケールアップできることを私は知っています。そこで、10 インチのレイアウトを 7 インチの画面に合わせて縮小する (iPad 用のアプリが iPad Mini で縮小されるのと同じように) という逆の方法が機能するかどうか疑問に思っていました。この記事 ( http://www.tested.com/tech/android/1381-how-android-scales-apps-for-different-screen-sizes ) を読んで、これは可能だと感じましたが、できませんでした。うまくいかない。

4

1 に答える 1

4

開発プロセスにはいくつかの誤解があります。

まず、Android はレイアウトを「縮小」しません。自分でそれを行い、特定のフォルダーにサイズに適したレイアウトを提供する必要があります。xlargeレイアウトには、レイアウトよりも多くの UI 要素が含まれる場合があります。これは、レイアウトが縦長の対応する要素とは異なる方法で要素を配置できるlargeようにです。landあるフォルダーから別のフォルダーにレイアウトをコピーするだけなら、それらすべての指定子は本当に必要ありませんよね?

第二に、Nexus 7 はlargeデバイスでありxlarge、あなたが思っているようなものではありません。Nexus 10 はxlarge.

于 2013-02-07T14:03:11.437 に答える