アプリ版:「スタンプのみでお礼する」機能のリリースについて

setMargins(10, 10, 10, 10);
とそのまま書くと単位がpx指定になっているようですが、
これをdp指定にすることはできるのでしょうか。

A 回答 (1件)

setMarginsでdpの値を指定して設定することはできないようですね。


dpの値は、densityをかければpxに変換出来ますから、予め変換のメソッドでも用意しておいて、それで値を変換して利用すればいいんじゃないでしょうか。

setMargins(DPtoPX(x), DPtoPX(y), DPtoPX(w), DPtoPX(h));

こんな感じで。

// 変換関数メソッド
float DPtoPX(float dp){
float d = getContext().getResources().getDisplayMetrics().density;
return dp * d;
}
    • good
    • 0
この回答へのお礼

ありがとうございました。
無事解決出来ました。

お礼日時:2013/01/29 09:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!