TypedValue.applyDimension()的作用

这个是我整理下来的,留着以后看的

int padding = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP,

4,
getActivity().getResources().getDisplayMetrics());

text.setPadding(padding, padding, padding, padding);

我的理解:padding的单位是:dip,
padding的大小是:4
, 最后将text的上下左右padding为:4dip

下面是源码内容,可以看到他有几个参数

public static float applyDimension(int unit, float value,
                                       DisplayMetrics metrics)
    {
        switch (unit) {
        case COMPLEX_UNIT_PX:
            return value;
        case COMPLEX_UNIT_DIP:
            return value * metrics.density;
        case COMPLEX_UNIT_SP:
            return value * metrics.scaledDensity;
        case COMPLEX_UNIT_PT:
            return value * metrics.xdpi * (1.0f/72);
        case COMPLEX_UNIT_IN:
            return value * metrics.xdpi;
        case COMPLEX_UNIT_MM:
            return value * metrics.xdpi * (1.0f/25.4f);
        }
        return 0;
    }
时间: 2024-10-08 03:14:10

TypedValue.applyDimension()的作用的相关文章

android中TypedValue.applyDimension()的作用

android TypedValue.applyDimension()的作用这个方法是转变为标准尺寸的一个函数,例如int size =(int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, 20,context.getResources().getDisplayMetrics()); 这里COMPLEX_UNIT_SP是单位,20是数值,也就是20sp.

android TypedValue.applyDimension()的作用

这个方法是转变为标准尺寸的一个函数,例如 int size = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, 20, context.getResources().getDisplayMetrics()); 这里COMPLEX_UNIT_SP是单位,20是数值,也就是20sp.

[Android Pro] Android TypedValue.applyDimension()的用法

reference to  : http://blog.csdn.net/voo00oov/article/details/45745819 这个方法的作用是 把Android系统中的非标准度量尺寸转变为标准度量尺寸 (Android系统中的标准尺寸是px, 即像素) Android系统中的尺寸单位有: 这个方法的作用是 把Android系统中的非标准度量尺寸转变为标准度量尺寸 (Android系统中的标准尺寸是px, 即像素) Android系统中的尺寸单位有: 标准单位: px (px是安卓

android TypedValue.applyDimension()的探究

这个方法是转变为标准尺寸的一个函数,例如 int size = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 20, context.getResources().getDisplayMetrics()); 这里COMPLEX_UNIT_DIP是单位,20是数值,也就是20dp. 详细探究: //转换dip为px 2 public static int convertDipOrPx(Context context, int

android.util.TypedValue.applyDimension

先看一个例子: int size = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 3, context.getResources().getDisplayMetrics()); 这行代码是把在当前屏幕分辨率的状态下将dip为3的值转换成单位为px值 下面是API介绍: public static float applyDimension (int unit, float value, DisplayMetrics met

TypedValue.applyDimension的使用

TypedValue.applyDimension是一个将各种单位的值转换为像素的方法 用法TypedValue.applyDimension(int unit, float value,DisplayMetrics metrics) 源码分析: public static float applyDimension(int unit, float value, DisplayMetrics metrics) { switch (unit) { case COMPLEX_UNIT_PX: retu

TypedValue.applyDimension 中dp和sp之间转化的真相

最近在看了许多关于dp-px,px-dp,sp-px,px-sp之间转化的博文,过去我比较常用的方式是: 1 //转换dip为px 2 public static int convertDipOrPx(Context context, int dip) { 3 float scale = context.getResources().getDisplayMetrics().density; 4 return (int)(dip*scale + 0.5f*(dip>=0?1:-1)); 5 } 6

android项目笔记整理(2)

31.利用SharedPreferences存储时间 读取时间: SharedPreferences sp=this.getSharedPreferences("actm",Context.MODE_PRIVATE); String lastTimeStr=sp.getString("lt",null);     if(lastTimeStr==null){         lastTimeStr="您是第一次访问本应用程序.";     }el

公共代码参考(TypedValue)

package com.fredric.util; import android.content.Context; import android.util.TypedValue; /*- * 像素转换相关 * COMPLEX_UNIT_PX:像素 * COMPLEX_UNIT_DIP:设备独立像素(与硬件设备无关) * COMPLEX_UNIT_PT:标准长度单位1/72英寸 * COMPLEX_UNIT_IN:英寸 * COMPLEX_UNIT_MM:毫米 * Google建议: * 像素类的