文字跑马灯

走马灯的效果主要是通过android:singleLine,android:ellipsize,android:
 marqueeRepeatLimit属性来配置的。 android:singleLine=true
表示使用单行文字,多行文字也就无所谓使用Marquee效果了。 android:marqueeRepeatLimit: 设置走马灯滚动的次数。
 android:ellipsize: 设置了文字过长时如何切断文字,可以有none, start,middle, end,
 如果使用走马灯效果则设为marquee. 但是Android的缺省行为是在控件获得Focus时才会显示走马灯效果
在莫个Button获得焦点时Button上的文字才或显示。
当有些情况下需要是文字一直滚动以引起用户注意,这是可以使用派生TextView,
重载onFocusChange donWindowFocusChanged,isFocused 这三个方法。
  
</pre><pre name="code" class="html">public class FocusedTextView extends TextView {

	public FocusedTextView(Context context, AttributeSet attrs, int defStyle) {
		super(context, attrs, defStyle);
	}

	public FocusedTextView(Context context, AttributeSet attrs) {
		super(context, attrs);
	}

	public FocusedTextView(Context context) {
		super(context);
	}
	/*
	 * 使android系统认为控件有焦点。
	 */
	@Override
	@ExportedProperty(category = "focus")
	public boolean isFocused() {
		return true;
	}

}

布局文件

<com.android.exmaple.ui.FocusedTextView
        android:textSize="18sp"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:text="            版本更新,               欢迎下载使用,                 版本更新,          欢迎下载使用,         版本更新,       欢迎下载使用"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        />



你可能感兴趣的:(文字跑马灯)