サムスンギャラクシータブGTP1000とサムスンギャラクシータブ10.1の両方で動作するアプリケーションを作成しようとしています。サムスンギャラクシータブ10.1(1280 * 800)は、GT P1000よりもはるかに大きな画面を持っているので、GT P1000はhdpiから読み取り、10.1はxhdpiから読み取る必要があると想定しています。驚いたことに、両方ともmdpiフォルダーから読み取っています。よろしく
3 に答える
画面サイズが大きいからといって、必ずしもピクセル密度が高いとは限りません。ピクセル密度については、物理的な画面サイズと画面解像度の両方を考慮する必要があります。
たとえば、とを考えてみましょうGalaxy Note 1
。Galaxy Tab 10.1
どちらも画面解像度はです1280*800
が、ギャラクシータブ10.1の物理画面サイズはですが10.1 inch
、ギャラクシーノートの物理画面サイズは5.3 inch
、ギャラクシータブサイズのほぼ半分です。したがって、ギャラクシーノートはギャラクシータブ10.1よりも1インチあたりのピクセル数が多くxhdpi
、密度がありますが、ギャラクシータブ10.1にはmdpi
密度があるので、このリンクで密度値を確認してください-
http://developer.android.com/guide/practices/screens_support.html
10.1タブの場合、drawable-xlarge-mdpi
フォルダを使用する必要があり、GT P1000もmdpiを使用する必要がありますが、GT P1000に問題があることを多くのオンライン投稿で見たように、mdpi密度がありますが、hdpiからのドローアブルを使用しているため、GTP1000については自分自身をチェックしていません。中華なべでないdrawable-large-hdpi
場合は、フォルダの使用を試みることができますdrawable-large-mdpi
。
また、マニフェストにxlargeサポートを追加します。
<supports-screens
android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:xlargeScreens="true"
/>
後で追加されたxlargeを使用するには、2.3以降のSDKを使用する必要があります。
mdpi
全体のサイズではなく、1インチあたりのドット数で表した画面密度を指します。どちらのデバイスも密度が似ていると思いますので、mdpi
フォルダーからリソースをロードします。
密度ではなく、実際の画面サイズ(大/中/小)に基づいて個別のレイアウトリソースを設定できます。ドキュメントを参照してください。
新しいフォルダ名をdrawable-xlarge-mdpiにして、その中にすべての画像を貼り付けるだけです。デバイスはそのフォルダから自動的に取得されます。
Galaxy Tab2の問題は解決しました!