zoukankan      html  css  js  c++  java
  • android: getDimension, getDimensionPixelOffset 和getDimensionPixelSize 区别

    ◆结论:

    getDimension  

    获取某个dimen的值,如果是dp或sp的单位,将其乘以density,如果是px,则不乘   返回float

    getDimensionPixelOffset  

    获取某个dimen的值,如果是dp或sp的单位,将其乘以density,如果是px,则不乘  返回int

    getDimensionPixelSize

    则不管写的是dp还是sp还是px,都会乘以denstiy.

    ◆代码设置字体大小

    tv_test.setTextSize(TypedValue.COMPLEX_UNIT_SP, 14);

    ◆实验

    <resources>
        <dimen name="dp_01">16dp</dimen>
        <dimen name="px_01">16px</dimen>
        <dimen name="sp_01">16sp</dimen>
    </resources>
        float a1=getResources().getDimension(R.dimen.dp_01);  
        int a2=getResources().getDimensionPixelOffset(R.dimen.dp_01);  
        int a3=getResources().getDimensionPixelSize(R.dimen.dp_01);  
      
        float b1=getResources().getDimension(R.dimen.px_01);
        int b2=getResources().getDimensionPixelOffset(R.dimen.px_01);  
        int b3=getResources().getDimensionPixelSize(R.dimen.px_01);  
      
        float c1=getResources().getDimension(R.dimen.sp_01);  
        int c2=getResources().getDimensionPixelOffset(R.dimen.sp_01);  
        int c3=getResources().getDimensionPixelSize(R.dimen.sp_01);  
      
        Log.d("test", "getDimension= "+a1+", getDimensionPixelOffset="+a2+",getDimensionPixelSize="+a3);  
        Log.d("test", "getDimension= "+b1+", getDimensionPixelOffset="+b2+",getDimensionPixelSize="+b3);  
        Log.d("test", "getDimension= "+c1+", getDimensionPixelOffset="+c2+",getDimensionPixelSize="+c3);  

    logcat输出结果

    //Device (480*800,240dpi,density=1.5):
    getDimension= 24.0, getDimensionPixelOffset=24,getDimensionPixelSize=24  
    getDimension= 16.0, getDimensionPixelOffset=16,getDimensionPixelSize=24  
    getDimension= 24.0, getDimensionPixelOffset=24,getDimensionPixelSize=24  
  • 相关阅读:
    java 计算文件 md5值
    前端项目结构
    路由器下连接路由器教程
    idea 中抽取部分代码
    idea 多行注释 Ctrl shift / 失效问题
    idea Ctrl+shift+F 快捷键失效原因
    Android studio 安装 jrebel for Android 下载不了问题
    利用C#创建和安装一个windows服务
    25条提高Visual Studio编码和调试效率的技巧
    IIS解决 上传文件大小限制
  • 原文地址:https://www.cnblogs.com/yongdaimi/p/10334081.html
Copyright © 2011-2022 走看看