zoukankan      html  css  js  c++  java
  • 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;
        }
        
    }
  • 相关阅读:
    ES2017 新特性:Async Functions (异步函数)
    为什么 window.location.search 为空?
    vue-cli 构建Vue项目后的打包和发布
    Vue.js父子组件如何传值 通俗易懂
    vue 面试题(文章末尾还有其他链接)
    vue组件命名和传值 and 父子组件传值
    line-gradient 之渐变角度
    vue-router路由模式
    vue-router 去掉#
    记录vue项目上线遇到的一些问题
  • 原文地址:https://www.cnblogs.com/yaxiaoke/p/5246495.html
Copyright © 2011-2022 走看看