TextView文字滚动效果

ScrollText.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <com.example.textviewdemo.ScrollText
        android:id="@+id/textview"
          android:clickable="true"
        android:ellipsize="marquee"
        android:focusable="true"
        android:singleLine="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="猫咪:一辈子都在躲雨,雨会不会很难过。   ——走饭    ——2011.01.23 7:54" />

</RelativeLayout>

ScrollText.java

package com.example.textviewdemo;

import android.content.Context;
import java.util.ArrayList;
import java.util.Timer;
import java.util.TimerTask;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Bitmap.Config;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Paint.FontMetrics;
import android.graphics.Paint.Style;
import android.os.Handler;
import android.os.Message;
import android.util.AttributeSet;
import android.view.WindowManager;
import android.widget.TextView;

public class ScrollText extends TextView{
    public ScrollText(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

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

    public ScrollText(Context context) {
        super(context);
    }
    
    
    @Override
    /**
     * 直接返回 true,就是告诉系统,我有焦点
     */
    public boolean isFocused() {
        return true;
    }
    
}
原文地址:https://www.cnblogs.com/yaxiaoke/p/5246495.html