android - 平衡多行 TextView

标签 android textview android-wrap-content

我从这个开始:

<TextView
    android:text="Here is what it looks like"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:gravity="center"/>

呈现如下:

| Here is what it looks |
|         like          |

但我希望它像这样呈现:

|      Here is what     |
|     it looks like     |

有没有办法在不自定义内置 TextView 的情况下做到这一点?如果不是,如何自定义 TextView 来执行此操作?

请注意,android:text 值实际上是以编程方式填充的,并且内容/长度可能会有所不同。我正在寻找适用于任何屏幕宽度上的任何文本值的通用解决方案。

最佳答案

从 API 23 开始,TextViewbreak strategyhyphenation frequency可用于实现此目的的设置。

<TextView
    android:text="Here is what it looks like"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:hyphenationFrequency="none"
    android:breakStrategy="balanced"
    android:gravity="center"/>

但是,我看不到任何方法可以为 API <23 执行此操作。 AppCompatTextView在版本 23.1.0 中,支持库似乎不支持这些。

注意:Android Studio 1.4.1 不会在预览窗口中显示所需的环绕行为(即使选择 API 23 进行预览),但它可以在模拟的 API 23 设备中看到。

关于android - 平衡多行 TextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33396907/

相关文章:

java - startActivity(intent) 方法调用预期错误

java - Unicode 组合字符单独打印(不与前一个字符组合)

android - 应用程序运行的时间

android - 这个 FFmpeg Command 的语法和逻辑是否正确?

android - 当我们更改三星设备中的设备字体样式时如何防止 TextView 字体更改

android - 将字体大小更改为 AlertDialog

android - 是否可以在没有父 View 的情况下设置 wrap_Content 属性?

android - 如何缩放 View 以适应 Android 动画中的内容大小?

android - 项目被添加到 "overflow menu"而不是 ActionBar