android dp、px、sp轉(zhuǎn)化工具類

直接上代碼,方便大家以后需要,直接復(fù)制就可以使用了

    
    import android.content.Context;
    import android.util.TypedValue;

    /**
     * px,dp,sp轉(zhuǎn)化工具類
     * 
     * @author Administrator
     * 
     */
    public class DensityUtils {

        /**
         * 不允許初始化
         */
        private DensityUtils() {
        }

        /**
         * dp2px
         * 
         * @param context
         * @param val
         * @return
         */
        public static int dp2px(Context context, float dpVal) {
            return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,
                    dpVal, context.getResources().getDisplayMetrics());
        }

        /**
         * sp2px
         * 
         * @param context
         * @param val
         * @return
         */
        public static int sp2px(Context context, float spVal) {
            return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP,
                    spVal, context.getResources().getDisplayMetrics());
        }

        /**
         * px2dp
         * 
         * @param context
         * @param pxVal
         * @return
         */
        public static int px2dp(Context context, float pxVal) {
            float scale = context.getResources().getDisplayMetrics().density;
            return (int) (pxVal / scale + 0.5f);
        }

        /**
         * px2sp
         * 
         * @param fontScale
         * @param pxVal
         * @return
         */
        public static int px2sp(Context context, float pxVal) {
            float fontScale = context.getResources().getDisplayMetrics().scaledDensity;
            return (int) (pxVal / fontScale + 0.5);
        }

    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容