2016-08-28 5 views
1

Nexus 5が592dpの高さを使用していることを測定します。 640dpを持っていても、その一部はソフトボタンのように使用されます。Nexus 5ではh592dpの数値が使用されていません。どうして?

私は以下の3つのdimens.xmlに異なる値で定義されたリソースのdimen値を持つレイアウトを持っています。

res/values/dimens.xml 
res/values-h592dp/dimens.xml 
res/values-h640dp/dimens.xml 

私はそれをvalues-h592dpから受け取ることを期待しています。ただし、代わりにデフォルトのvalueフォルダから取得しています。なぜこれはそうですか?私は何かが欠けていたか?

+0

私も同じ問題に直面しています。解決策は見つかりましたか? –

+0

解決策はまだ見つかりませんでした。 – Elye

+0

また、 "値-w360dp-h610dp"を640dpデバイス用に、 "値-w360dp"(592dpデバイス用)を試してみることもできます。リンクに記載されているようにhttps://developer.android.com/guide/practices/screens_support.html メモを読んでください:**これらの修飾子を使用して指定するサイズは、実際の画面サイズではありません。むしろ、サイズはアクティビティのウィンドウで使用できるdp単位の幅または高さのサイズです。 ** –

答えて

1

明らかに幅が同じではないため、正確な高さをデバイスごとに設定することはできません(例:Nexus 5では592dp、Samsung 7では640dp)。設定する必要がある高さは、計算された高さ - ステータスバーの高さです。

use h509dp for Samsung SII that has height 533.33dp - 24dp (status bar) 
use h567dp for Nexus 5 that has 592dp height - 25dp (status bar) 
use h616dp for Samsung S7 that has 640dp height - 24dp (status bar) 
use h615dp for Samsung Note II that has 640dp height - 25dp (status bar) 

サムスンS7とノートIIの場合、h615dpを共有できます。これの詳細については、を参照してください。

関連する問題