如何在 TextView 中强制断字?(分词上的字符“-”)

Nul*_*ion 6 android hyphenation textview

我正在使用一个 TextView 扩展类,它像打字机一样写一个字符串,每个字符一个字符。它工作正常,但是当写一个不适合当前行的单词时,它会产生烦人的行为并从当前行中删除不适合的工作并将其写入下一行。

欢迎大家。我需要知道如何告诉 TextView 使用断字,它必须像这样强制断字:

superlargewo-
rd

verylarg-
eword
Run Code Online (Sandbox Code Playgroud)

这意味着放置字符 - 而不是将单词传递到下一行

怎么能强制进入TextView?

小智 1

对于任何想通过 xml 让连字符快速工作的人来说,这对我在 SDK 25+ 下有效

像这样在 xml 布局中添加hyphenationFrequency并连字符到您的字符串中。\u00AD

android:text="Sylabe: "
Run Code Online (Sandbox Code Playgroud)

 android:text="Sy\u00ADla\u00ADbe: "
 android:hyphenationFrequency="normal"
Run Code Online (Sandbox Code Playgroud)

确保没有设置任何内容来限制文本行

 android:singleLine="false"
Run Code Online (Sandbox Code Playgroud)

根据空间的不同,它会产生以下文本:

Sylabe
Run Code Online (Sandbox Code Playgroud)

或者

Sy-
labe 
Run Code Online (Sandbox Code Playgroud)

或者

Syla-
be
Run Code Online (Sandbox Code Playgroud)

注释:
\u200B中断文本,不带任何连字符。