admin 管理员组文章数量: 887007
android dp 转换工具,Android dp、px、sp相互转化工具类
正文
今天我编写一个dp、px、sp相互转化的工具类
我们在开发中有时候可能会有dp、px、sp相互的需求,首先我们来看看这三者的概念
px:它其实就是我们常说的像素单位,有时你可能会听到某屏幕是800*600的分辨率,这就是指的px
dp:这个是虽然也是尺寸单位,但是它会根据不同屏幕的密度进行适配,最开始Android是用的px,后来为了适配各种屏幕,于是就出现了dp,dp一般用于View大小设置
sp:它和dp一样,也是为了适配屏幕出现的,不过它一般是用于字体大小设置
既然我们要让它们能够互相转换,那必定会有一个桥梁,那这个桥梁是什么呢,通过上面的描述你应该也大概知道了,那就是屏幕的密度,那我们开发中怎么获取呢,下面我们就来看看它们之间如何进行转换
px转dip或dp
/**
* px转dip或dp
*
* @param context
* @param pxValue
* @return
*/
public static int px2dip(Context context, float pxValue) {
float scale = context.getResources().getDisplayMetrics().density;
return (int) (pxValue / scale + 0.5f);
}
可以看到,px转换成dp先是通过获取scale,这个scale获取的代码是
本文标签: android dp 转换工具 Android dppxsp相互转化工具类
版权声明:本文标题:android dp 转换工具,Android dp、px、sp相互转化工具类 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1732355263h1534250.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论