即使布局太长,也要在Textview中显示文本

时间:2014-11-07 09:59:38

标签: android textview

我想在textview中显示动态字符串。此textview可以在一定程度上占用一定的长度。有可能让太长的字符串以某种方式运行textview吗?我的意思是:最初Textview应该显示尽可能多的字母,但是让我们说5秒后它会慢慢地遍历孔串。这将使整个文本可读。用户不必与ui进行交互。

2 个答案:

答案 0 :(得分:1)

试试这个:

<TextView
    android:text="aaaa bbbbb  ccccc ddddd eee ffff gggg hhhh iiii jjjjj kkkkkk lllll mmmmm nnnnn oooo aaaa bbbbb  ccccc ddddd eee ffff gggg hhhh iiii jjjjj kkkkkk lllll mmmmm nnnnn oooo aaaa bbbbb  ccccc ddddd eee ffff gggg hhhh iiii jjjjj kkkkkk lllll mmmmm nnnnn oooo" 
    android:singleLine="true" 
    android:ellipsize="marquee"
    android:marqueeRepeatLimit ="marquee_forever"
    android:focusable="true"
    android:focusableInTouchMode="true" 
    android:scrollHorizontally="true"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"/>

如果你不想让它一遍又一遍地重复,只需删除这一行:

android:marqueeRepeatLimit ="marquee_forever"

编辑:

好的,这是一个快速解释。您必须将TextViews ellipsize类型设置为“Marquee”。这将自动从左向右滑动。您可以设置它应该重复的次数(如果有的话)。这条线

android:marqueeRepeatLimit="YOUR_REPEAT_COUNT_HERE"

设定重复的次数。

您还需要以下行才能使选框正常工作:

android:focusable="true"
android:focusableInTouchMode="true"

以下是Google TextView Api的链接: http://developer.android.com/reference/android/widget/TextView.html#attr_android%3aellipsize

答案 1 :(得分:0)

如果您计划在小型布局或UI组件中显示大型文本,则可以全局了解文本的一部分,即附加了&#34; ...&#34;

的子字符串

例如,如果我有一个18个字符的字符串,我的UI组件只能显示10个字符,那么我将得到一个由索引0到7的字符组成的子字符串,并附加&#34; ...&#34 ;并显示它

希望这有帮助