zoukankan      html  css  js  c++  java
  • PixelUtils:像素转换工具

    /** 像素转换工具
     */
    public class PixelUtils {
    
        /**
         * The context.
         */
        private static Context mContext = CustomApplcation.getInstance();
    
        /**
         * dp转 px.
         *
         * @param value the value
         * @return the int
         */
        public static int dp2px(float value) {
            final float scale = mContext.getResources().getDisplayMetrics().densityDpi;
            return (int) (value * (scale / 160) + 0.5f);
        }
    
        /**
         * dp转 px.
         *
         * @param value   the value
         * @param context the context
         * @return the int
         */
        public static int dp2px(float value, Context context) {
            final float scale = context.getResources().getDisplayMetrics().densityDpi;
            return (int) (value * (scale / 160) + 0.5f);
        }
    
        /**
         * px转dp.
         *
         * @param value the value
         * @return the int
         */
        public static int px2dp(float value) {
            final float scale = mContext.getResources().getDisplayMetrics().densityDpi;
            return (int) ((value * 160) / scale + 0.5f);
        }
    
        /**
         * px转dp.
         *
         * @param value   the value
         * @param context the context
         * @return the int
         */
        public static int px2dp(float value, Context context) {
            final float scale = context.getResources().getDisplayMetrics().densityDpi;
            return (int) ((value * 160) / scale + 0.5f);
        }
    
        /**
         * sp转px.
         *
         * @param value the value
         * @return the int
         */
        public static int sp2px(float value) {
            Resources r;
            if (mContext == null) {
                r = Resources.getSystem();
            } else {
                r = mContext.getResources();
            }
            float spvalue = value * r.getDisplayMetrics().scaledDensity;
            return (int) (spvalue + 0.5f);
        }
    
        /**
         * sp转px.
         *
         * @param value   the value
         * @param context the context
         * @return the int
         */
        public static int sp2px(float value, Context context) {
            Resources r;
            if (context == null) {
                r = Resources.getSystem();
            } else {
                r = context.getResources();
            }
            float spvalue = value * r.getDisplayMetrics().scaledDensity;
            return (int) (spvalue + 0.5f);
        }
    
        /**
         * px转sp.
         *
         * @param value the value
         * @return the int
         */
        public static int px2sp(float value) {
            final float scale = mContext.getResources().getDisplayMetrics().scaledDensity;
            return (int) (value / scale + 0.5f);
        }
    
        /**
         * px转sp.
         *
         * @param value   the value
         * @param context the context
         * @return the int
         */
        public static int px2sp(float value, Context context) {
            final float scale = context.getResources().getDisplayMetrics().scaledDensity;
            return (int) (value / scale + 0.5f);
        }
    
    }

  • 相关阅读:
    图片预加载的JS代码
    JavaScript实现漫天飞花及文字滚动特效的代码
    判断远程图片是否存在的JavaScript代码
    dos批处理命令详解
    内存虚拟盘软件XMSDSK的使用
    医学论坛(收集)
    velocity
    java开源项目 源代码
    开放源代码的全文检索引擎Lucene
    批处理命令大全
  • 原文地址:https://www.cnblogs.com/mthoutai/p/7101861.html
Copyright © 2011-2022 走看看