美文网首页
dp,sp通用适配

dp,sp通用适配

作者: cao苗子 | 来源:发表于2020-02-19 13:31 被阅读0次

在activity被创建的时候调用,最好在Application中的ActivityLifecycleCallbacks中调用

 /**
     * dp适配 getResources().getDisplayMetrics().density
     * sp适配 getResources().getDisplayMetrics().scaledDensity
     * pt适配 getResources().getDisplayMetrics().xdpi
     * @param context
     * @param width ui设计图的宽度
     * @param height ui设计图的高度
     */
    private static void resetDensity(Context context,int width,int height){
        Point point = new Point();
        //获取屏幕的数值
        ((WindowManager)context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getSize(point);
        //dp适配 getResources().getDisplayMetrics().density
        context.getResources().getDisplayMetrics().density = point.x/width*2f;
        context.getResources().getDisplayMetrics().density = point.y/height*2f;
        //sp适配 getResources().getDisplayMetrics().scaledDensity
        context.getResources().getDisplayMetrics().scaledDensity = point.x/width*2f;
        context.getResources().getDisplayMetrics().scaledDensity = point.y/height*2f;
    }

相关文章

网友评论

      本文标题:dp,sp通用适配

      本文链接:https://www.haomeiwen.com/subject/yykafhtx.html