在我的应用程序中,我对某些视图使用 setMargins(....) 方法。
在我的布局中,我用“dp”而不是像素来固定视图的宽度、高度和大小,
在我的代码中,当我设置 Margins 时,结果很糟糕,但是当我在布局中用 px 更改 dp 时,效果很好。
所以我的问题是:我可以用 dp 值设置边距吗??例子 :
myView.setMargins(left in dp , top in dp , right in dp , bottom in dp ) ;
提前致谢
在我的应用程序中,我对某些视图使用 setMargins(....) 方法。
在我的布局中,我用“dp”而不是像素来固定视图的宽度、高度和大小,
在我的代码中,当我设置 Margins 时,结果很糟糕,但是当我在布局中用 px 更改 dp 时,效果很好。
所以我的问题是:我可以用 dp 值设置边距吗??例子 :
myView.setMargins(left in dp , top in dp , right in dp , bottom in dp ) ;
提前致谢
您可以轻松地做到这一点,只需要定义 Dimension 元素(值 strings.xml )并在您的代码中引用它们。
这是来自 strings.xml 的行
<dimen name="left_border_distance">32dip</dimen>
但您不需要直接输入,而是通过 IDE 输入。
然后在你的代码中
int marginLeft = (int) getResources().getDimensionPixelSize(R.dimen.left_border_distance);
myView.setMargins(marginLeft , top in dp , right in dp , bottom in dp ) ;