是个传颂厨

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

一般在网站上或者app上见到的文字循环滚动,学习自慕课网。

单个循环

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:text="我是一个textview,我是一个textview,我是一个textview,我是一个textview,我是一个textview,我是一个textview" 
        />

        <!--ellipsize="marquee"为不完全展示,去掉省略号...
           android:focusable="true"
            android:focusableInTouchMode="true" 
            三个整体为循环跑马灯效果-->

如果是多个的话,首先在scr包中新创建一个class

就叫做:WaterText

package com.frist.waterline;

import android.content.Context;
import android.util.AttributeSet;
import android.widget.TextView;

public class WaterText extends TextView{

    public WaterText(Context context) {
        super(context);
        // TODO Auto-generated constructor stub
    }

    public WaterText(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        // TODO Auto-generated constructor stub
    }

    public WaterText(Context context, AttributeSet attrs) {
        super(context, attrs);
        // TODO Auto-generated constructor stub
    }
    //生成三个构造方法
    
    @Override
    public boolean isFocused(){
        return true;
    }
    //重载方法,使两个都有焦点
}

然后改变activity_main

<!--  将下方开始的标签改为自己重写的类 -->
    <com.frist.waterline.WaterText  
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever"
        android:text="我是一个textview,我是一个textview,我是一个textview,我是一个textview,我是一个textview,我是一个textview" 
        />

        <!--ellipsize="marquee"为不完全展示,去掉省略号...
           android:focusable="true"
            android:focusableInTouchMode="true" 
            三个整体为循环跑马灯效果-->

    <com.frist.waterline.WaterText
        android:id="@+id/textView2"
       android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever"
        android:text="我是一个textview,我是一个textview,我是一个textview,我是一个textview,我是一个textview,我是一个textview" />
<!-- 设置第二个要循环的 
另:android:marqueeRepeatLimit="marquee_forever"此句为持续循环-->

 

posted on 2016-07-20 15:08  是个传颂厨  阅读(200)  评论(0编辑  收藏  举报