アプリに付属の画面をデザインしました。このアプリはAndroid1.6以降を対象としています。現在、アプリは大部分のhdpiおよびmdpiデバイスで実行されており、解像度が162dpiの1024x600、179dpiの1024x600、240dpiの1024x600などのいくつかのデバイスで実行されています。下記のフォルダで複数の画面をサポートするための代替レイアウトを提供しました。
layout:デフォルトのレイアウトリソース。
layout-hdpi: hdpi画面用。私のプロジェクトでは、このために特別に最適化する必要のあるレイアウトはほとんどありません。
layout-mdpi: mdpi画面用。私のプロジェクトでは、このために特別に最適化する必要のあるレイアウトはほとんどありません。
layout-large:大画面のデフォルトのレイアウトリソース。
layout-large-hdpi:解像度1024x600のhdpi画面のレイアウトリソース
layout-sw400dp-v11:これは主に7インチタブレット用です。Honeycomb以上を実行しているデバイスのみがこれを認識できます
。qHD画面(256 dpiなどの540x960)のサポートも追加する必要があります。以下は、qHD画面のサポートを設計および追加するために必要な画面の例です。このスクリーンショットは、解像度が480x800、240dpiのHTCIncredibleSで撮影されたものです。
qHD画面のレイアウトは、それらの画面でも同じように見えるように設計しました。
ここで、以下の質問があります
。1. hdpi、mdpi、および上記の奇妙な画面をサポートする必要があることを考慮して、代替リソースを提供するための正しいディレクトリ構造を持っていますか?そうでない場合、それらの画面に関して代替リソースをどのように提供する必要がありますか?UIが複数の画面解像度と密度で同じように見えるように、個別のファイルを設計する必要があります。
2.qHD画面は256dpiです。つまり、これらの画面はhdpi画面です。ほとんどのデバイスで上記のように見えるhdpi画面のリソースがすでにあります。しかし、qHD画面で表示すると、下のスクリーンショットのようになります。では、ほとんどのデバイスで良好に表示されている現在のレイアウトリソースに影響を与えないように、qHD画面に代替リソースを提供するにはどうすればよいですか?
@Espiandev
qHD、hdpiデバイスのディスプレイに依存しないピクセル(DIP)の画面サイズは360x640ですが、インクレディブルSは320x533であるため、一部の画像が他の画像よりも画面の上方にあります。つまり、基本的に、qHDデバイスは、画面ごとにインクレディブルSよりも多くのものを表示できます。DIPの説明とその他のヒントについては、こちらをご覧ください
-この洞察に感謝します。私はこれを知っています。また、私はDianneHackbornによる投稿を読みました。「画面サイズを管理するための新しいツール」-http://android-developers.blogspot.in/2011/07/new-tools-for-managing-screen-sizes.html
見た目からすると、現在、ゴール/ゲイン/移動パーツの上にマージンまたはパディングを使用しています。代わりに、重力を下に変更して(つまり、画面の下部に揃えて)、アイテムの下のマージンまたはパディング。
-いいえ、これらのパーツにパディングやマージンを使用していません。ゴール/ゲイン/トーゴボタンがそのメーターテープボタンの下にある相対的なレイアウト。重力を下に設定し、下にパディングを付けることを提案したように、はい、私もそれを試しましたが、そのメーターテープボタンとこれらの円の間の距離が大きくなり、それらのメガネ、その下のボタン、および異なるレイアウトファイルを作成したメーターテープボタンの間のサイズとマージンを変更する必要があります。小画面デバイスでこの画面を表示すると、小画面デバイスで表示されるビューが少なくなるため、ビューが重なります。
ただし、mdpi、hdpiなどの個別のレイアウトリソースは実際には必要ないため、このように画面サイズを分割するのではなく、アプリを画面に適応させるように取り組んでいます。
通常、私は必要ないことに同意します。 mdpiとhdpi画面の別々のレイアウト。ただし、ここでの要件は、画面がすべての画面でまったく同じに見える必要があることです。同様に、その黄色い円内のすべてのビューがその円の外側に出てはなりません。中央にあるボタンは常に中央にある必要があります。また、メーターテープボタンの上下にある3つの小さな円の相対的なサイズは同じである必要があります。これは、mdpiとhdpiの画面に異なるレイアウトを作成する以外に選択肢がありませんでした。
qHD画面用に別のレイアウトファイルを作成しました。今私の質問は、qHDデバイスがそのファイルを使用し、他のデバイスが現在機能しているように機能し続けるように、どこに配置するかです。