java - 我们如何正确使用 TextView 和字体?

标签 java android textview android-fonts

当我们有一个包含特定大小文本的 TextView 时,似乎如果我们向封闭布局添加填充,那么文本就会环绕以保持相同的字体大小。
但这是否意味着设置特定的字体大小可能会导致不同屏幕尺寸等问题?
因为我期望即使字体大小受到影响,文本也会以某种方式“调整大小”以保持一行。此外,如果我的文本有更多字符,该行似乎也会环绕并弄乱我的布局。
如果显示的字符更多,我怎么能使用字体而不弄乱我的布局?

更新:
基本上我的问题是,我们如何处理可以采用任意长度的字符串并适当使用字体的 TextViews

最佳答案

一般来说,我发现将 layout_width 和/或 layout_height 设置为 wrap_content 可以满足我的大部分需求。但是,在某些情况下,文本长度可能会变得太长。在这种情况下,人们会使用几种不同的策略。您选择的那个取决于您的布局和您想要实现的目标。

动态调整文本大小

您在问题中提到了字体大小,所以我将首先介绍它。您可以使用不同的值或 dimensions更改不同设备尺寸和方向的字体大小。

不过,这样做并不一定会使字体适合 TextView。所以有些人尝试以编程方式调整字体大小。这似乎不是 Android 中非常主流的解决方案,但这里有一个讨论:

截断文本

如果文本太长而不适合 TextView 的布局,并且没有必要看到整个内容,您可以在最后将其剪掉。您还可以使用 android:ellipsize 进行多种选择。阅读这些以获取更多详细信息:

使用 ScrollView

当我有一个可能包含大量文本的 TextView 时,我通常将其放在 ScrollView 中。有关详细信息,请参阅此答案:

关于java - 我们如何正确使用 TextView 和字体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29207673/

相关文章:

Android - 使用 QFile 打开文件

java - Eclipse 声称我没有名为 R.id.list 的 ListView

android - 过渡 android fragment 向上滑动

java - 如何在 setText() 之后将文本附加到 TextView?

android - TextView不正确的链接解析

当我尝试访问映射到 Controller 的页面时出现 java.lang.NullPointerException

java - 选择具有空值的对象

android - TextView 文本未更新

java - 类型中的方法 func(List<Object>) 不适用于参数 (List<String>)

java - 对每个键/常量具有多个值的 Java 枚举进行反向查找?