TextView跑马灯实践

 产品标题有跑马灯的需求,百度找个这篇文章:https://blog.youkuaiyun.com/qq_36982160/article/details/82801677

照做了,效果可以。但是换了页面,使用出现“文字显示不全”的现象,感觉就像:跑一段回到原位,根本跑不完整。

百般对比和测试,发现前后两个页面的差距在于,问题页面上有:layout_above的配置。不清楚为什么会有这个影响,姑且把这个属性换掉。

 

 

自定义Textview并对其进行改造,主要目的是让textview获取焦点,这样文字才能滚动起来

public class MyTextView extends android.support.v7.widget.AppCompatTextView {
    public MarqueeTextView(Context context) {
        super(context);
    }

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

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

    @Override
    public boolean isFocused() {//必须重写,且返回值是true,表示始终获取焦点
        return true;
    }
}


xml文件中设置必要属性

<MyTextView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:ellipsize="marquee" //设置跑马灯效果
    android:focusable="true" //需要有焦点才会滚动
    android:focusableInTouchMode="true"
    android:marqueeRepeatLimit="marquee_forever" //设置循环滚动为无限循环
    android:scrollHorizontally="true"
    android:singleLine="true" //单行显示
   />

--------------------- 
作者:ai-exception 
来源:优快云 
原文:https://blog.youkuaiyun.com/qq_36982160/article/details/82801677 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值