使用TextView實現跑馬燈的效果

2021-09-09 02:07:24 字數 3883 閱讀 6442

1、定義textview標籤的4個屬性:

android:singleline="true"//使其只能單行android:ellipsize="marquee"//去掉省略號

android:focusable = "true"//使其迴圈

android : focusableintouchmode = "true"

為了永久的滾動,應該再加乙個android:marqueerepeatlimit="marquee_forever",這樣就能一直在進行

xml version="1.0" encoding="utf-8"

?>

<

relativelayout

xmlns:android

=""xmlns:tools

=""android:id

="@+id/mainlayout"

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

="com.example.lj.chapter7.mainactivity"

>

<

imagebutton

android:id

="@+id/button_one"

android:layout_width

="wrap_content"

android:layout_height

="wrap_content"

android:layout_alignparenttop

="true"

android:layout_centerhorizontal

="true"

android:layout_margintop

="38dp"

android:background

="#00000000"

android:longclickable

="false"

android:src

="@drawable/button1"

/>

<

com.example.lj.chapter7.marqueetextview

android:id

="@+id/textview"

android:layout_width

="match_parent"

android:layout_height

="wrap_content"

android:layout_below

="@+id/button_one"

android:layout_centerhorizontal

="true"

android:layout_margintop

="38dp"

android:ellipsize

="marquee"

android:focusable

="true"

android:focusableintouchmode

="true"

android:marqueerepeatlimit

="marquee_forever"

android:singleline

="true"

android:text

="@string/******text"

/>

<

imageview

android:id

="@+id/imageview"

android:layout_width

="wrap_content"

android:layout_height

="wrap_content"

android:layout_below

="@+id/textview"

android:layout_centerhorizontal

="true"

android:layout_margintop

="59dp"

android:src

="@drawable/image1"

/>

<

com.example.lj.chapter7.marqueetextview

android:id

="@+id/textview1"

android:layout_width

="match_parent"

android:layout_height

="wrap_content"

android:layout_alignparentbottom

="true"

android:layout_alignparentleft

="true"

android:layout_alignparentstart

="true"

android:ellipsize

="marquee"

android:focusable

="true"

android:focusableintouchmode

="true"

android:marqueerepeatlimit

="marquee_forever"

android:singleline

="true"

android:text

="@string/******text"

/>

relativelayout

>

2、自定義乙個繼承textview的類:

實現三個建構函式;

複寫isfocued方法,返回true(預設都有有焦點,平常只有乙個有焦點在第一行上)

package

com.example.lj.chapter7;

import

android.content.context;

import

android.util.attributeset;

import

android.widget.textview;

/*** created by lj on 2016/8/13. */

public

class marqueetextview extends

textview

public

marqueetextview(context context, attributeset attrs)

public marqueetextview(context context, attributeset attrs, int

defstyleattr)

@override

public

boolean

isfocused()

}

3、使用自定義的類,方法是用包名和自定義類名代替textview(src下的包名+類名)

參考:

7 使用TextView實現跑馬燈

首先給textview新增乙個單行限制 android singleline true 解決方案一 更改textview的乙個屬性 android ellipsize marquee 即省略多餘部分的意思,包括去掉省略號 然而我在android 6上面並沒有省略省略號 然而,該有的東西都被省略了。不...

TextView實現跑馬燈效果

這段 粘上就可用 顯示跑馬燈效果的前提條件就是你的文字內容要比顯示文字的外部元件長,即外部元件無法完整的顯示內部的文字內容。因此要實現跑馬燈效果有兩種設定方式 1 layout width 設定為成比文字內容短的固定值,最好不要寫成wrap content或者fill parent。2 如果layo...

TextView跑馬燈的實現

在textview屬性中有這樣的乙個屬性 android ellipsize 設定當文字過長時,該控制項該如何顯示。有如下值設定 start 省略號顯示在開頭 end 省略號顯示在結尾 middle 省略號顯示在中間 marquee 以跑馬燈的方式顯示 動畫橫向移動 好像跑馬燈這種效果已經不用咱們來...