我有一个textview
,我想限制它的字符。实际上,我可以这样做,但我要找的是如何添加三个点(...)在字符串的末尾。这一个显示文本已继续。这是我的XML,但没有点,虽然它限制了我的文本。
<TextView
android:id = "@+id/tvFixture"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:layout_toLeftOf = "@id/ivFixture_Guest"
android:text = "@string/test_06"
android:lines = "1"
android:ems = "3"
android:gravity = "right"
style = "@style/simpletopic.black"
android:ellipsize="end"/>
已弃用:
在Textview中再添加一个属性android:singleline=“true”
更新:
android:ellipsize="end"
android:maxLines="1"
以下是我通过使用各种选项将TextView
强制到单行(有无三个点)所学到的知识。
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:text="one two three four five six seven eight nine ten" />
这只是将文本强制为一行。任何额外的文本都将被隐藏。
相关:
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:ellipsize="end"
android:text="one two three four five six seven eight nine ten" />
这将删除不适合的文本,但通过添加省略号(三个点),让用户知道文本已被截断。
相关:
<TextView
android:id="@+id/MarqueeText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:singleLine="true"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:text="one two three four five six seven eight nine ten" />
这会使文本在TextView上自动滚动。注意,有时需要在代码中设置:
textView.setSelected(true);
假定android:maxlines=“1”
和android:singleLine=“true”
应该做基本相同的事情,由于singleLine=“true”显然不推荐使用它,所以我宁愿不使用它,但当我取出它时,选框不再滚动。但是,去掉maxlines
并不影响它。
相关:
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/horizontalScrollView">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:scrollHorizontally="true"
android:text="one two three four five six seven eight nine ten" />
</HorizontalScrollView>
这允许用户手动滚动以查看整行文本。