三种获取Dimension的方法区别

工作上碰到需要从xml中读取尺寸的问题。发现getResources()下有3个获取方法。getDimension()、getDimensionPixelOffset()和getDimensionPixelSize()。这三种方法一直不知道具体区别。今儿正好有时间,研究了一下。

首先getDimension()方法,返回类型是float,他是没有做任何处理的数值。

getDimensionPixelOffset(),返回类型int,他会把计算结果直接强转成int型。

getDimensionPixelSize(),返回类型int,他会把计算结果四舍五入。

举个例子就很好明白了,如果getDimension()方法得到的数值是44.5,那么getDimensionPixelOffset()得到的就是44,getDimensionPixelSize()就是45.

有兴趣的可以追踪一下源码。

你可能感兴趣的:(三种获取Dimension的方法区别)