Android 将具体数值转换成dip简单方法

来源:互联网 发布:linux 杀dhcp进程 编辑:程序博客网 时间:2024/06/04 18:51

工作中有时间会遇到一些控件会在代码中动态的被写入:
此时,你想改变这个控件的宽高会很痛苦,直接赋值20,100的涉及到像素和dip的转换。

方法:
1:在Res 资源文件的values文件夹下的dimens xmL文件中设置一个基准;1dp

      <dimen name="base_dip">1dp</dimen>

2.建立一个方法;
px转成dip

 public    int  px2Dip(int px){        return  getContext().getResources().getDimensionPixelSize(R.dimen.base_dip)*px;    }

3,在设置宽高的地方直接使用;
例如:

  View vItem = v.findViewById(R.id.vItem);   vItem.getLayoutParams().height = px2Dip(500);  设置控件的高度为500dp
0 0