您的位置:首页 > 产品设计 > UI/UE

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

2016-08-28 15:03 501 查看
碰到个小需要,用跑马灯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="这是一条公告啊公告啊这是一条公告啊公告啊"/>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息