Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从代码和xml应用时,sp单元似乎不同_Java_Android_Xml - Fatal编程技术网

Java 从代码和xml应用时,sp单元似乎不同

Java 从代码和xml应用时,sp单元似乎不同,java,android,xml,Java,Android,Xml,也许我自己会找到解决这个问题的办法,但我想知道这种现象的原因: 当我从xml设置视图的字体大小时 android:textSize="16sp" 从代码中可以看出: myTextView.setTextSize(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, 16, getResources().getDisplayMetrics())); 在这两种情况下,我都将文本值设置为16sp,但当我运行它时,两个文本视图的大小看起来完全不同

也许我自己会找到解决这个问题的办法,但我想知道这种现象的原因: 当我从xml设置视图的字体大小时

android:textSize="16sp"
从代码中可以看出:

myTextView.setTextSize(TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, 16, getResources().getDisplayMetrics()));
在这两种情况下,我都将文本值设置为16sp,但当我运行它时,两个文本视图的大小看起来完全不同!这个java代码错了吗?我错过什么了吗?
谢谢你

你将它转换了两次。。。setTextSize已经为您完成了,因此您不必再次应用尺寸标注。只要用这个:

myTextView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16);