晨旭猿的小屋

记录我的学习和工作历程

不持有焦点的跑马灯效果TextView

碰到个小需要,用跑马灯TextView来推送平台公告。

之前做过一个类似的用的是继承TextView重写onFocusChanged来保持焦点。

今天发现其实根本不需要这么做,只要在初始化工作中加一个句

 mTextView.setSelected(true);

然后我查看了一下源码,对原来的做法笑cry脸:只要设置selected为true,就会自己去调用startMarque()

   public void setSelected(boolean selected) {
        boolean wasSelected = isSelected();

        super.setSelected(selected);
        if (selected != wasSelected && mEllipsize == TextUtils.TruncateAt.MARQUEE) {
            if (selected) {
                startMarquee();
            } else {
                stopMarquee();
            }
        }
    }

<span style="white-space:pre">	</span><TextView
            android:id="@+id/textview_notice_content"
            android:layout_centerInParent="true"
            android:layout_width="200dp"
            android:layout_height="wrap_content"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            android:singleLine="true"
            android:text="这是一条公告啊公告啊这是一条公告啊公告啊"/>


阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u014137988/article/details/52345723
个人分类: android UI
上一篇最好的Android事件分发讲解文章
下一篇跑马灯状态获取(停止后自动隐藏,用于广告推送等)
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭