TextView实现跑马灯效果 就这么简单!

一、方法

这里我们用两种方法来实现跑马灯效果,虽然实质上是一种

实质就是:

1、TextView调出跑马灯效果

2、TextView获取焦点

第一种:

1、TextView调出跑马灯效果

android:ellipsize="marquee"

2、TextView获取焦点

android:focusable="true"
android:focusableInTouchMode="true"

说明:

这种方法如果界面上别的控件获取焦点的时候就会停止这个跑马灯效果

第二种:

1、TextView调出跑马灯效果

android:ellipsize="marquee"

2、TextView获取焦点

public class MyTextView extends TextView{    public boolean isFocused() {     return true;   } }

我们的TextView用的就是fry.MyTextView

说明:

就算别的程序获取焦点,这个跑马灯效果也不会停止。

二、代码实例

效果图

三、代码

fry.MyTextView

package com.example.textviewdemo; import android.content.Context; import android.util.AttributeSet; import android.widget.TextView; public class MyTextView extends TextView{ public MyTextView(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); // TODO Auto-generated constructor stub } public MyTextView(Context context, AttributeSet attrs) { super(context, attrs); // TODO Auto-generated constructor stub } public MyTextView(Context context) { super(context); // TODO Auto-generated constructor stub } @Override public boolean isFocused() { return true; } }

/textViewDemo1/res/layout/activity04.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:orientation="vertical" > <TextView android:id="@+id/tv_runHorseLamp" android:layout_width="match_parent" android:layout_height="wrap_content" android:singleLine="true" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:text="这是一段很长的威武霸气的滚动的实现跑马灯效果的一段逼格很高的很有含义和涵养的文字" /> <!--ellipsize是小数点的意思 marquee 这句话是添加滚动效果--> <!-- 获取焦点之后才能滚动 --> <fry.MyTextView android:id="@+id/tv_runHorseLamp1" android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="marquee" android:singleLine="true" android:text="这是一段很长的威武霸气的滚动的实现跑马灯效果的一段逼格很高的很有含义和涵养的文字" /> <EditText android:id="@+id/et_1" android:layout_width="match_parent" android:layout_height="wrap_content" > </EditText> </LinearLayout>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

时间: 2024-10-25 00:28:37

TextView实现跑马灯效果 就这么简单!的相关文章

Android TextView实现跑马灯效果的方法_Android

本文为大家分享一个非常简单但又很常用的控件,跑马灯状态的TextView.当要显示的文本长度太长,又不想换行时用它来显示文本,一来可以完全的显示出文本,二来效果也挺酷,实现起来超级简单,所以,何乐不为.先看下效果图: 代码实现 TextView自带了跑马灯功能,只要把它的ellipsize属性设置为marquee就可以了.但有个前提,就是TextView要处于被选中状态才能有效果,看到这,我们就很自然的自定义一个控件,写出以下代码: public class MarqueeTextView ex

Android TextView实现跑马灯效果的方法

本文为大家分享一个非常简单但又很常用的控件,跑马灯状态的TextView.当要显示的文本长度太长,又不想换行时用它来显示文本,一来可以完全的显示出文本,二来效果也挺酷,实现起来超级简单,所以,何乐不为.先看下效果图: 代码实现 TextView自带了跑马灯功能,只要把它的ellipsize属性设置为marquee就可以了.但有个前提,就是TextView要处于被选中状态才能有效果,看到这,我们就很自然的自定义一个控件,写出以下代码: public class MarqueeTextView ex

android应用中用TextView实现跑马灯效果实例教程

如何实现两个TextView的跑马灯效果,如果使用常规的做法,只能够使一个TextView起作用. 现在方法具体如下: 1.为TextView增加四个属性 android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:singleLine="true" 实现TextView类,实现三个构造函数并重

Android基于TextView实现跑马灯效果

本文实例为大家分享了Android TextView实现跑马灯效果的具体代码,供大家参考,具体内容如下 当Layout中只有一个TextView需要实现跑马灯效果时,操作如下. 在Layout的TextView配置文件中增加 android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:singleLine=&quo

Android用过TextView实现跑马灯效果的示例

以前就遇到过这个问题,今天重新拾起来. 跑马灯效果其实就是当文字超过TextView控件宽度的时候,使用滚动的方式显示出来: 方法1:(直接xml搞定) Android系统中TextView实现跑马灯效果,必须具备以下几个条件: 1.android:ellipsize="marquee": 2.TextView必须单行显示,且内容必须超出TextView宽度: 3.TextView要获得焦点才能滚动. xml代码如下: <TextView android:id="@+i

android TextView实现跑马灯效果

本文实例为大家分享了android TextView跑马灯效果的具体代码,供大家参考,具体内容如下 一.要点 设置四个属性 android:singleLine="true" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" 直接在xml中使用 <TextView android:layout_

自定义TextView实现跑马灯效果

mainActivity如下: package c.x; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class MainActivity extends Activity { private Button mStartbB

Android使用TextView跑马灯效果

老规矩,先上图看效果. 说明 TextView的跑马灯效果也就是指当你只想让TextView单行显示,可是文本内容却又超过一行时,自动从左往右慢慢滑动显示的效果就叫跑马灯效果. 其实,TextView实现跑马灯效果很简单,因为官方已经实现了,你只需要通过设置几个属性即可.而且,相关的资料其实网上也有一大堆了,之所以还写这篇博客出来是因为,网上好多人的博客都是只贴代码的啊,好一点的就是附带几张图片,可是这是动画效果啊,不动起来,谁知道跑马灯效果到底长什么样,到底是不是自己想要的效果啊(不会只有题主

Android基于TextView属性android:ellipsize实现跑马灯效果的方法_Android

本文实例讲述了Android基于TextView属性android:ellipsize实现跑马灯效果的方法.分享给大家供大家参考,具体如下: Android系统中TextView实现跑马灯效果,必须具备以下几个条件: 1.android:ellipsize="marquee" 2.TextView必须单行显示,即内容必须超出TextView大小 3.TextView要获得焦点才能滚动 XML代码: android:ellipsize="marquee", andro