我有一个维度资源值
<dimen name="arrowButton_textValue_textSize">20sp</dimen>
我通过以下两种方式使用该值
<TextView
android:id="@+id/arrowButton_textValue"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/arrowButton_textValue_textSize"/>
和
float _textSize = getResources().getDimension(R.dimen.arrowButton_textValue_textSize);
TextView _textView = (TextView) findViewById(R.id.arrowButton_textValue);
_textView.setTextSize(_textSize);
我认为这两种方法是相同的,尽管它们在真实设备上会导致不同的文本大小。例如,在某些设备(HTC Wildfire S)上,它们看起来相同,但在 HTC Desire 上却不同,第二种方法会生成更大的文本大小
如何根据设备实际显示指标将维度转换为真实设备上的精确浮点?