【发布时间】:2018-06-04 20:49:31
【问题描述】:
我的 Android 应用程序有一个 TextView,其宽度为屏幕宽度的 50%,高度为屏幕高度的 10%。我已将textSize 设置为 44sp,但在大型设备(屏幕尺寸)上,它会使文本太小,而在小型设备上又太大。我该如何解决这个问题?
【问题讨论】:
-
使用 dp 而不是 sp。 SP 表示将控制权交给用户。 dp 表示固定字体大小。
我的 Android 应用程序有一个 TextView,其宽度为屏幕宽度的 50%,高度为屏幕高度的 10%。我已将textSize 设置为 44sp,但在大型设备(屏幕尺寸)上,它会使文本太小,而在小型设备上又太大。我该如何解决这个问题?
【问题讨论】:
使用 dimen.xml 文件之类的文件夹
【讨论】:
我建议您将 TextView 的宽度和高度都设置为 wrap_content 并使用 sp 作为您的文本大小。
使用wrap_content 将您的文本大小设置为 44sp 应该适用于大多数设备。
如果您仍需要调整某些设备(密度),您可以将文本大小提取到其自己的 dimen 资源中并覆盖其默认配置的值,如图所示 here
【讨论】: