2

縦向きのみで Android アプリケーションを開発しています。これは、すべての Android バージョン (バージョン 2.2 から 4.2) で 320 * 480 の解像度で正常に機能しています。

今、私は次の解像度でもこのアプリケーションをサポートしたいと考えています:

  1. 960×540
  2. 480×800
  3. 1280×720

複数の画面でアプリケーションをサポートするための最良の方法は何ですか?

1x、1.5x、2x の 3 種類の画像があります。

320 * 480 の解像度では、1x の画像を使用しています。

私はたくさん検索しましたが、どのアプローチが最善かつ正しいアプローチになるのかまだ明確ではありません。

私にはいくつかの選択肢があります:

  1. 解像度ごとに単一のレイアウト(res/layout の下) と個別のドローアブル(res/drawable-mdpi、res/drawable-hdpi、および res/drawable-xhdpi の下) を使用します。
  2. 解像度ごとに個別のレイアウト(res/layout、res/layout-large、および res/layout-xlarge の下) と個別のドローアブル(res/drawable-mdpi、res/drawable-hdpi、および res/drawable-xhdpi の下) を使用します。

または、複数の画面をサポートする場合は常に使用する必要があるその他の最善のアプローチ。

さらに問題: 上記のアプローチのいずれかを使用している場合、変更が hdpi および xhdpi 画面に表示されません。

私を案内してください。前もって感謝します。

4

2 に答える 2

2

唯一の正しい方法はありません。この決定はアプリケーションに依存すると思います。

きれいなレイアウトのアプリでは、独自の xml_layout を作成し、android:layout_weightを使用して要素を画面に分散させます。これにより、すべての異なる画面解像度で、利用可能なスペースでこの要素の同様の分布が得られます。

それ以外の場合、レイアウトがより複雑な場合は、さまざまな画面をサポートするためにさまざまなレイアウトを作成する必要があります。

于 2013-03-20T11:01:36.480 に答える
0

最適なオプションは 2 です。これは、リソースを提供する Android 標準の推奨される方法です。そして、あなたの問題は、正しいタイプを指定しなかったことが原因だと思います。レイアウトの代替として、次のものも使用できます。

レイアウト-h720dp

レイアウトランド

レイアウト-sw600dp

レイアウト-sw600dp-ランド

レイアウト-sw720dp

レイアウト-w720dp

http://developer.android.com/guide/topics/resources/providing-resources.html#AlternativeResourcesを参照してください。

于 2013-03-20T10:08:52.617 に答える