2011-04-12 3 views
4

AndroidデベロッパーガイドのSupporting Multiple Screensを読むと、ピクセルの代わりに密度独立ピクセル(dp)を使用することが常にベストであると言われています。また、Androidは、さまざまな密度のデバイスでアプリケーションのレンダリングのほとんどを処理します。今UIメソッドを渡す単位は何ですか?

私の質問は、私たちがViewクラスのパディング機能で

setPaddingを見れば、さ

left  the left padding in pixels 
top  the top padding in pixels 
right the right padding in pixels 
bottom the bottom padding in pixels 

(int型、int型のトップを残したが、 右、int型の底にint型)この関数を使用すると、直接値を渡すことができますか、またはすべてのデバイスでUIを最もよく表示するために、変換された値をdpからpxに渡す必要がありますか?

答えて

2

チェックアウトthis padding referenceとAndroidを検索:あなたはパディングを設定するピクセルにディップから変換する必要がありますように見えます

パディング。さまざまなデバイスで正しく動作するように、値をdipからpixelsに変換する必要があります。

+0

ありがとうございました。私もそう思う。実際には、私はsetPadding関数の説明だけをチェックしていました。そして、docからアンドロイド:パディングの説明を読んでいませんでした。その説明では、dpをsetPadding関数のピクセルに変換する必要があるようです。 – poddroid

2

ディップ値をピクセルに変換してパッドします。

final float scale = getContext().getResources().getDisplayMetrics().density; 

int valuePixels = (int)(valueDip * scale); 
+0

はちょうどそれを探していて、この答えを見つけました.. thx – Zoombie

関連する問題