我正在尝试编写一个单元测试来验证是否使用了 DIP。我可以使用 editText.getTextSize() 读取大小值,但无法读取文本单元(在这种情况下,这是为了确保使用“dp”)。如果有人将文本单位从 dp 更改为 px 或任何其他单位,测试用例应该会失败。
<EditText
android:id="@+id/someId"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="48dp"/>
提前致谢!
最佳答案
首先,永远不要在 dp
中使用 textSize。他们应该始终使用 sp
,以便有视力问题的人可以根据需要扩大规模。
其次,为什么要为此编写单元测试?你在测试什么?那如果你把一个给定的大小放在它实际使用的 xml 中呢?不要,那是谷歌在测试框架时要测试的工作。编写单元测试来做到这一点完全是浪费时间,因为它永远不会中断。您是否正在测试某个元素是否具有特定大小?然后测试它,你不会测试它是否在 dp
与 px
中指定。
关于java - 如何确定 Java 中 View 的像素单位(px、dp 等)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38362289/