Android中px与dip,sp与dip等的转换工具类
16lz
2022-07-09
Android中px与dip,sp与dip等的转换工具类
功能
通常在代码中设置组件或文字大小只能用px,通过这个工具类我们可以把dip(dp)或sp为单位的值转换为以px为单位的值而保证大小不变。方法中的参数请参考http://www.cnblogs.com/wader2011/archive/2011/11/28/2266669.html
代码
/** * Android大小单位转换工具类 * * @author wader * */public class DisplayUtil { /** * 将px值转换为dip或dp值,保证尺寸大小不变 * * @param pxValue * @param scale(DisplayMetrics类中属性density) * @return */ public static int px2dip(float pxValue, float scale) { return (int) (pxValue / scale + 0.5f); } /** * 将dip或dp值转换为px值,保证尺寸大小不变 * * @param dipValue * @param scale(DisplayMetrics类中属性density) * @return */ public static int dip2px(float dipValue, float scale) { return (int) (dipValue * scale + 0.5f); } /** * 将px值转换为sp值,保证文字大小不变 * * @param pxValue * @param fontScale(DisplayMetrics类中属性scaledDensity) * @return */ public static int px2sp(float pxValue, float fontScale) { return (int) (pxValue / fontScale + 0.5f); } /** * 将sp值转换为px值,保证文字大小不变 * * @param spValue * @param fontScale(DisplayMetrics类中属性scaledDensity) * @return */ public static int sp2px(float spValue, float fontScale) { return (int) (spValue * fontScale + 0.5f); }}
更多相关文章
- Android开发——Android搜索框架(二)
- [Android] ACTION_GET_CONTENT与ACTION_PICK的区别
- Android中使Dialog显示时背景不变暗
- Android(安卓)UI系列 - 布局 - 目录
- android Manifest.xml选项-android:ConfigChanges
- linearLayout 和 relativeLayout的属性区别
- Android(安卓)属性动画(Property Animation) 完全解析 (下)
- Android修改字体样式
- android EditText使用指南