如何用'dp‘来设置边距?">
我试图用编程的方式来创建设计。我使用LayoutParams作为详细信息,我想设置页边距,我看到了.setMargins( 0,100,0,100),但是我想用'dp‘设置如下:
<TextView
...
android:layout_marginLeft="10dp"
.../>
如何用'dp‘来设置边距?
发布于 2019-02-09 12:39:55
那么,您首先要知道父布局,如果是RelativeLayout,您需要:
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(this);
如果是线性的,请确保用线性替换相对,以获得可以使用的正确的layoutParams.Now:
layoutParams.setMargins(i1,i2,i3,i4);
所有的值都应该以像素为单位,所以如果需要一个方法,它应该将dp转换为px,以便you.Feel免费使用我的方法:
public int dpToPx(Context context, float dp) {
return Math.round(dp * getDisplayMetrics(context).density);
}
现在,只需将layoutParams设置为子视图:
textView.setLayoutParams(layoutParams);
https://stackoverflow.com/questions/54610309
复制相似问题