TextView实现跑马灯效果,不用获取焦点
然后在xml中用自定义的view
- package com.androidbears.components;
- import android.content.Context;
- import android.graphics.Rect;
- import android.util.AttributeSet;
- import android.widget.TextView;
- public class ScrollingTextView extends TextView {
- public ScrollingTextView(Context context, AttributeSet attrs, int defStyle) {
- super(context, attrs, defStyle);
- init();
- }
- public ScrollingTextView(Context context, AttributeSet attrs) {
- super(context, attrs);
- init();
- }
- public ScrollingTextView(Context context) {
- super(context);
- init();
- }
- @Override
- protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) {
- if(focused)
- super.onFocusChanged(focused, direction, previouslyFocusedRect);
- }
- @Override
- public void onWindowFocusChanged(boolean focused) {
- if(focused)
- super.onWindowFocusChanged(focused);
- }
- @Override
- public boolean isFocused() {
- return true;
- }
- //add by laomo
- private void init(){
- setEllipsize(TruncateAt.MARQUEE);//对应android:ellipsize="marquee"
- setMarqueeRepeatLimit(-1);//对应android:marqueeRepeatLimit="marquee_forever"
- setSingleLine();//等价于setSingleLine(true)
- }
- }
- <com.androidbears.components.ScrollingTextView
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/showmsg"/>
from:http://blog.youkuaiyun.com/diyishuguang/article/details/12845007