您的位置:首页 > 移动开发 > Android开发

(转)Android - TextView px和sp转换,以及getTextSize和setTextSize单位

2017-03-20 20:22 706 查看
原地址:http://blog.csdn.net/u012246458/article/details/53518931


说明:

使用代码设置TextView需要转换px和sp的,并且getTextSize和setTextSize单位得到和设置的单位又是不一样的。


etTextSize和setTextSize:

getTextSize返回值是以像素(px)为单位的,而setTextSize()是以sp为单位的。


px和sp转换:

[java] view
plain copy

 





/** 

     * 将px值转换为sp值,保证文字大小不变 

     * 

     * @param pxValue 

     * @return 

     */  

    public static int px2sp(float pxValue) {  

        final float fontScale = getContext().getResources().getDisplayMetrics().scaledDensity;  

        return (int) (pxValue / fontScale + 0.5f);  

    }  

  

    /** 

     * 将sp值转换为px值,保证文字大小不变 

     * 

     * @param spValue 

     * @return 

     */  

    public static int sp2px(float spValue) {  

        final float fontScale = getContext().getResources().getDisplayMetrics().scaledDensity;  

        return (int) (spValue * fontScale + 0.5f);  

    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐