使用 WRAP_CONTENT LayoutParams 使 TextView 文本适合一行

Fit TextView text on one line with WRAP_CONTENT LayoutParams

假设我有一个带有一些动态文本的 TextView。此 TextView 被放置在 LinearLayout 内,宽度和高度均具有 WRAP_CONTENT LayoutParams。

问题是某些文本换行到第二(或第三)行。我想避免这种情况。

我尝试用不间断的 space 字符替换所有 ' '(space 个字符)。这没有帮助。文本仍然中断。我也无法设置 TextView's maxLines=1 因为字符串数据中有一些换行符。

我不确定是否需要包含任何代码示例。如果有什么具体的,请在评论中问我。

任何帮助将不胜感激:~)

您正在寻找

android:singleLine="true" 

提供 TextView the attribute android:singleLine="true" 会将文本限制为单个水平滚动行,而不是让它换行到多行。没有 android:ellipsize 属性,如果文本不能完全适合屏幕,则文本将可以水平滚动。将 android:layout_width="wrap content" 属性赋予 TextView 的父布局后,它应该相应地调整自身大小。

@Joe B. 回答正确。但 android:singleLine="true" 已弃用。您需要使用

android:maxLines="1"