android 像素转换
2015-09-28 12:31
561 查看
import android.content.Context;
import android.util.TypedValue;
/**
* 常用单位转换的辅助类
*/
public class DensityUtils
{
private DensityUtils()
{
/* cannot be instantiated */
throw new UnsupportedOperationException("cannot be instantiated");
}
/**
* dp转px
*/
public static int dp2px(Context context, float dpVal)
{
return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
dpVal, context.getResources().getDisplayMetrics());
}
/**
* sp转px
*/
public static int sp2px(Context context, float spVal)
{
return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,
spVal, context.getResources().getDisplayMetrics());
}
/**
* px转dp
*/
public static float px2dp(Context context, float pxVal)
{
final float scale = context.getResources().getDisplayMetrics().density;
return (pxVal / scale);
}
/**
* px转sp
*/
public static float px2sp(Context context, float pxVal)
{
return (pxVal / context.getResources().getDisplayMetrics().scaledDensity);
}
}
import android.util.TypedValue;
/**
* 常用单位转换的辅助类
*/
public class DensityUtils
{
private DensityUtils()
{
/* cannot be instantiated */
throw new UnsupportedOperationException("cannot be instantiated");
}
/**
* dp转px
*/
public static int dp2px(Context context, float dpVal)
{
return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
dpVal, context.getResources().getDisplayMetrics());
}
/**
* sp转px
*/
public static int sp2px(Context context, float spVal)
{
return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,
spVal, context.getResources().getDisplayMetrics());
}
/**
* px转dp
*/
public static float px2dp(Context context, float pxVal)
{
final float scale = context.getResources().getDisplayMetrics().density;
return (pxVal / scale);
}
/**
* px转sp
*/
public static float px2sp(Context context, float pxVal)
{
return (pxVal / context.getResources().getDisplayMetrics().scaledDensity);
}
}
相关文章推荐
- AndroidStudio集成Git(图文并茂)
- Android桌面组件App Widget完整案例
- Android桌面组件App Widget用法入门教程
- Android Studio在SVN上创建分支
- Android于JNI调用列出的程序
- android四大组件之ContentProvider个人总结
- Android 沉浸式状态栏总结
- Android中使用lambda表达式
- Android中使用lambda表达式
- android多国语言文件夹文件汇总
- Android 5.0(Lollipop)中的SurfaceTexture,TextureView, SurfaceView和GLSurfaceView
- android四大组件总结之BroadcastReceiver个人总结
- android studio之安装 fetching问题
- 转自彪哥:Android 史上最强多语言国际化,不仅第一次会跟随系统,而且会保存用户的语言设置
- android学习:在ListView中添加带图片和文字的复杂列表项
- android中PopupMenu的使用
- android学习:在ListView显示对象信息、侦听列表事件
- Android手机联系人源码(添加联系人页面一个功能)修改
- Android实现多条Toast快速显示(强制中止上一条Toast的显示)
- Android实现多条Toast快速显示(强制中止上一条Toast的显示)