Android TextView 横向滚动(跑马灯效果)

Android TextView 中当文字比较多时希望它横向滚动显示,下面是一种亲测可行的方法。

效果图:

1.自定义TextView,重写isFocused()方法返回true,让自定义TextView一直处于获取焦点状态。

package com.example.shen.marqueedemo;

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

/**
 * Created by shen on 2015/8/19.
 */
public class MarqueeTextView extends TextView {

    public MarqueeTextView(Context context) {
        super(context);
    }

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

    public MarqueeTextView(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    @Override
    public boolean isFocused(){
        return true;
    }

}

2.布局文件

android:sigleLine="true" //单行

android:ellipsize="marquee" //以跑马灯的方式显示(动画横向移动)

android:marqueeRepeatLimit="marquee_forever" //一直滚动

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <com.example.shen.marqueedemo.MarqueeTextView
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:text="hello_world! hello_world! hello_world! "
        android:layout_centerInParent="true"
        android:ellipsize="marquee"
        android:singleLine="true"
        android:marqueeRepeatLimit="marquee_forever"/>

</RelativeLayout>

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-14 00:06:38

Android TextView 横向滚动(跑马灯效果)的相关文章

Android:TextView 自动滚动(跑马灯) (转)

Android:TextView 自动滚动(跑马灯) TextView实现文字滚动需要以下几个要点: 1.文字长度长于可显示范围:android:singleLine="true" 2.设置可滚到,或显示样式:android:ellipsize="marquee" 3.TextView只有在获取焦点后才会滚动显示隐藏文字,因此需要在包中新建一个类,继承TextView.重写isFocused方法,这个方法默认行为是,如果TextView获得焦点,方法返回true,失

Android 开发笔记___textvieww__跑马灯效果

1 <?xml version="1.0" encoding="utf-8"?> 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 3 android:orientation="vertical" android:layout_width="match_parent" 4 android:l

Android textView点击滚动(跑马灯)效果

布局文件: 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="match_parent" 5 and

ViewGroup实现可以上下、左右滚动跑马灯效果

先上效果图: 动画效果有点差..... 代码: package com.example.scrolltextview; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import android.content.Context; import android.content.res.TypedArray; import android.graphics.Paint; import androi

Unity3D 文字滚动跑马灯效果

需求 在日常游戏中,文字滚动效果是比较常用的.例如日常游戏顶部的新闻公告,聊天系统的文字滚动,都属于这个范围. 思路 由于使用的地方比较广泛,所以希望能够尽量独立的游戏之外,能够做到随处使用的功能.文字显示属于UI范畴,直接使用unity3d中的GUI功能是比较合适的. 实现 一.新闻公告类 新闻公告类的文字滚动一般都是由左向右,或者由下至上滚动的,并且多是单行单列的模式. public class Lamp : MonoBehaviour { public float scrollviewWi

Android TextView跑马灯效果

TextView跑马灯简单效果 <!--简单示例--> <TextView android:text="@string/longWord" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/textView1" android:ellipsize="marquee&quo

Android 跑马灯效果与EditText冲突

近期一个项目,因为布局TextView内容太长了.首先想到的就是跑马灯效果,所以就把TextView又一次自己定义了,尽管跑马灯效果实现了.只是导致了还有一个问题就是EditText输入问题,当第一次点击EditText的时候可以弹出软键盘,只是把软键盘关闭后,再次点击TextView就弹不出软键盘,百思不得其解.所以就在重写EditText加入了一个点击事件.当每次用户点击的时候弹出软件盘,尽管可以点击EditText弹出软键盘,可是无法输入内容,不用想也是焦点问题,可是页面上的EditTex

Android之如何用TextView实现滚动字幕的效果【跑马灯】

TextView 实现滚动字幕效果[跑马灯效果]: android:ellipsize="marquee"//可滚动,star(头部),middle(中部),end(尾部) 超出显示不下的内容用...代替, 实现条件 1.必须设置为单行显示,且TextView中的内容超过它的容纳范围, 2.TextView本身没有焦点,必须设置成可获取焦点 <TextView android:layout_width="100dp" android:layout_height

Android界面(1) 使用TextView实现跑马灯效果

方法一:(只能实现单个TextView的跑马灯效果)在TextView添加以下控件 android:singleLine="true"只能单行,超出的文字显示为"..." android:ellipsize="marquee"省略号没有,但没有跑马灯效果 android:focusable="true" android:focusableInTouchMode="true" 方法二:(可以实现多行TextV