Android TextView跑马灯效果

Android TextView跑马灯效果
效果图

TextView跑马灯
继承TextView重写isFocused方法还有配置singline属性

第一种方式:

XML布局为:

xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:background="#C0C0C0"
              android:orientation="vertical">
    
    
    
    
    
    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever"
        android:singleLine="true"
        android:text="没有一代人的青春是容易的。
        每一代有每一代人的宿命、委屈、挣扎、奋斗,
        没什么可抱怨的。——白岩松" 
        android:textSize="30dp"/>
LinearLayout>

第二种方式:

自定义TextView


/**
 * 自定义TextView实现跑马灯效果
 * Created by baochen on 2016/1/25.
 */
public class MyTextView extends TextView {
    public MyTextView(Context context) {
        super(context);
    }

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

    public MyTextView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }
    //重写isFocused方法,让其一直返回true
    public boolean isFocused() {
        return true;
    }
}
重点:
//重写isFocused方法,让其一直返回true
public boolean isFocused() {
        return true;
        }
此时的XML布局
<com.example.chenxiaoyang.reuselayout.MyTextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:ellipsize="marquee"
    android:singleLine="true"
    android:text="没有一代人的青春是容易的。
    每一代有每一代人的宿命、委屈、挣扎、奋斗,
    没什么可抱怨的。——白岩松" 
    android:textSize="30dp"/>

你可能感兴趣的:(Android,TextView跑马灯效果)