在 TextView 中显示 3 个点或截断的任何其他方法
Posted
技术标签:
【中文标题】在 TextView 中显示 3 个点或截断的任何其他方法【英文标题】:Any other methods to show 3 dots or truncate in TextView 【发布时间】:2017-06-05 06:30:12 【问题描述】:我的 TextView 标签看起来像这样
<TextView
android:layout_
android:layout_
android:drawableEnd="@drawable/search_pickup_address"
android:drawablePadding="@dimen/space"
android:scrollHorizontally="false"
android:ellipsize="end"
android:inputType="text"
android:maxLines="1"
android:minLines="1" />
我已经设置了所有这些属性
android:scrollHorizontally="false"
android:ellipsize="end"
android:maxLines="1"
android:minLines="1"
由于不推荐使用单行 true 方法
android:singleLine="true"
当我使用此方法时,点显示正常。
String label;
if (string.length() >= 35)
label= data.substring(0, 35)+ "...";
else
label= data;
textView.setText(label);
但是有没有像
这样的直接方法 android:singleLine="true"
【问题讨论】:
你有没有想过淡化 TextView 的末端而不是 ellipsize 的可能性? 您只是在问如何修复椭圆大小吗?还是你真的想要另一种方法来做到这一点? 我只是要求其他方法.. 就像这只能在 XML 中实现。 如果你的意思是,可以严格在布局 XML 中完成,那么可以。从<TextView>
元素中删除 inputType
属性。
【参考方案1】:
你可以使用
android:ellipsize="end"
android:maxLines="1"
android:minLines="1"
android:singleLine="true"
【讨论】:
感谢您的回复,但我正在寻找我未提及的其他方法。 能否请您为您的答案添加更多上下文。仅代码的答案很难理解。如果您可以在帖子中添加更多信息,这将对提问者和未来的读者都有帮助。【参考方案2】:您可以使用用户属性:
android:ellipsize="end"
android:singleLine="true"
希望对你有帮助!
【讨论】:
感谢您的回复,但我正在寻找我未提及的其他方法 可以分享一下吗? :)以上是关于在 TextView 中显示 3 个点或截断的任何其他方法的主要内容,如果未能解决你的问题,请参考以下文章
在 IE 和 chrome 中截断(带有 3 个点“...”)内容不起作用