如何在中间省略android文本

时间:2021-01-07 18:16:33

标签: android ellipsis

android:ellipsize="middle" 不是我想要的。

我想要一个看起来像这样的 textview ellipsize:

enter image description here

你好(Daniel Cumbersome)欢迎你!

这有 3 条规则:

  1. Textview 必须在其固定宽度内填充尽可能多的字符
  2. 省略号恰好出现在 ) 之前
  3. ... 和 ) 之间的距离必须一致

尝试过的方法:

纯xml

如果可能,我认为这是最好的方法。我试过的方法是将“Hello (Daniel Cumbersome”和“) Welcome!”分开。到两个单独的文本视图,将它们并排放置,然后只将第一个文本视图椭圆化。这种方法的问题在于它在条件 3 下失败。

TextView 扩展

我添加了基于 TextView.layout.getLineVisibleEnd 修改文本的 TextView 扩展。但是,它过于依赖布局完整,所以我认为这不是最佳解决方案。

新建文本视图

如果可能,我想避免这种情况,因为我不想将 EllipsizeTextView 仅用于 ellipsize。

0 个答案:

没有答案