android - TextView 中的统一文本换行

标签 android android-layout android-view textview

我需要在 TextView 中进行漂亮的文本换行,尤其是标题中的文本。

TextView 的文本换行可能看起来像这样,最后一个单词换行:

| ========================= |
|          =====            |

我想要的是在线条宽度更均匀的地方换行:

|     ================      |
|      ==============       |

为一种语言添加 '\n' 并在不同的屏幕尺寸上测试它很容易,但当翻译超过 10 种时就不行了。

最佳答案

我已经修改了 TextView 并创建了 UniformTextView。在调查了 TextView 源代码后,我决定最小化 TextView 的宽度以获得首选行数。

    <pl.dziobas.uniformtextview.UniformTextView
        android:text="@string/sample_text"
        android:layout_height="wrap_content"
        android:layout_width="match_parent"
        app:prefLineNumber="2"
        style="@style/sample_style" />

它对我来说很满意。
UniformTextView example

来源可在 github 上找到

关于android - TextView 中的统一文本换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19756126/

相关文章:

android - EditText 在 ScrollView 内不可滚动

android - 是否可以在android程序中使用com.sun.net.httpserver包?

java - Android - 使自定义 View 的透明区域不可点击

java - 画一个不断更新数据的折线图?

android - ListView 在滚动时搞砸了

android - 如何在 Android 中限制 Spinner 下拉 View 的高度

android - 如何将ImageButton的前景图片设置为空

android - Canvas 不在自定义 View 中显示所有绘制的部分?

android - LazyColumn 如何与其他可组合项一起适应屏幕?

java - 无法在 Android 11 上以编程方式拍照 - Intent 返回已取消状态