安卓开发之多个TextView跑马灯

安卓开发之多个TextView跑马灯,第1张

跑马灯就是TextView容纳不下内容,需要靠播放动画的形式来显示

1、通常,很多人只需要实现一个TextView的跑马灯,只需要在将textview的属性中加入下面这段即可(具体参数代表的意思,请参考此处http://www.cnblogs.com/over140/archive/2010/08/27/1809745.html)

android:layout_marginRight="20dp" 
          android:ellipsize="marquee"   
    android:focusable="true"   
    android:marqueeRepeatLimit="marquee_forever"   
    android:focusableInTouchMode="true"   
    android:scrollHorizontally="true"
    android:singleLine="true"


2、但如果需要实现同一页面多个textview的跑马灯时,会发现,永远只有一个textview可以实现,其他都没有任何效果,这是为什么呢?因为跑马灯效果的实现有个很重要的参数就是是否isFocused。所以你只需继承TextView并重写isFocused方法即可,如下:

public class TextViewMarquee extends TextView {
	public TextViewMarquee(Context context) {
		super(context);
	}

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

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



	@Override
	public boolean isFocused() {
		return true;
	}
}


希望能帮到大家!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/2088913.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-07-22
下一篇 2022-07-22

发表评论

登录后才能评论

评论列表(0条)

保存