您好我正在为ImageView
设置填充,并且每个设备都向我显示不同的填充,某个地方较小或某处更多。
我这样做
int padding = Util.dpFromPx(6, this);
thumbnailImageView.setPadding(padding, padding, padding, padding);
thumbnailImageView.setBackgroundColor(Color.WHITE);
// convert the px to dp
public static int dpFromPx(float px, Context context) {
return (int) (px / context.getResources().getDisplayMetrics().density);
}
我想保持所有设备的填充相同。有没有想过呢?
索尼设备
三星Dous
答案 0 :(得分:1)
SetPadding接收以像素为单位的值。
所以你需要从逢低开始并转换为像素:
int paddingInPx = Util.dipsToPixels(6);
thumbnailImageView.setPadding(paddingInPx , paddingInPx , paddingInPx , paddingInPx );
public int dipsToPixels(int dips)
{
return (dips * getApplicationContext().getResources().getDisplayMetrics().density + 0.5f);
}