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     android:orientation="vertical"
 6     android:paddingBottom="@dimen/activity_vertical_margin"
 7     android:paddingLeft="@dimen/activity_horizontal_margin"
 8     android:paddingRight="@dimen/activity_horizontal_margin"
 9     android:paddingTop="@dimen/activity_vertical_margin"
10     tools:context="com.example.textview.MainActivity" >
11
12     <TextView
13         android:layout_width="wrap_content"
14         android:layout_height="wrap_content"
15         android:layout_marginLeft="200dp"
16         android:text="数值" />
17
18     <TextView
19         android:id="@+id/tv"
20         android:layout_width="match_parent"
21         android:layout_height="wrap_content"
22         android:layout_marginLeft="200dp"
23         android:ellipsize="end"
24         android:marqueeRepeatLimit="marquee_forever"
25         android:scrollHorizontally="true"
26         android:singleLine="true"
27         android:text="莫听穿林打叶声,何妨吟啸且徐行,竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生."
28         android:textSize="18sp" />
29
30     <TextView
31         android:id="@+id/tv1"
32         android:layout_width="match_parent"
33         android:layout_height="wrap_content"
34         android:layout_marginLeft="200dp"
35         android:ellipsize="end"
36         android:marqueeRepeatLimit="marquee_forever"
37         android:scrollHorizontally="true"
38         android:singleLine="true"
39         android:text="莫听穿林打叶声,何妨吟啸且徐行,竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生."
40         android:textSize="18sp" />
41
42 </LinearLayout>

代码:

 1 package com.example.textview;
 2
 3 import android.app.Activity;
 4 import android.os.Bundle;
 5 import android.text.TextUtils;
 6 import android.view.View;
 7 import android.view.View.OnClickListener;
 8 import android.widget.TextView;
 9
10 public class MainActivity extends Activity {
11     private TextView tv, tv1;
12
13     @Override
14     protected void onCreate(Bundle savedInstanceState) {
15         super.onCreate(savedInstanceState);
16         setContentView(R.layout.activity_main);
17
18         initView();
19     }
20
21     private void initView() {
22         tv = (TextView) findViewById(R.id.tv);
23         tv.setOnClickListener(new OnClickListener() {
24
25             @Override
26             public void onClick(View v) {
27                 // TODO Auto-generated method stub
28                 tv.setEllipsize(TextUtils.TruncateAt.MARQUEE);
29                 tv.setFocusable(true);
30                 tv.setFocusableInTouchMode(true);
31                 tv.requestFocus();
32
33             }
34         });
35
36         tv1 = (TextView) findViewById(R.id.tv1);
37         tv1.setOnClickListener(new OnClickListener() {
38
39             @Override
40             public void onClick(View v) {
41                 // TODO Auto-generated method stub
42                 tv1.setEllipsize(TextUtils.TruncateAt.MARQUEE);
43                 tv1.setFocusable(true);
44                 tv1.setFocusableInTouchMode(true);
45                 tv1.requestFocus();
46
47             }
48         });
49
50     }
51 }
时间: 2024-10-03 01:11:04

Android textView点击滚动(跑马灯)效果的相关文章

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界面(1) 使用TextView实现跑马灯效果

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

android textview 实现跑马灯效果

跑马灯效果最重要的就是四个属性,分别是: android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:singleLine="true" 控件的宽度,不一定是具体的值,可以是math_parent,如果想让textview中的文字滚动的话,那里面内容的长度肯定是要大于控件的长度的,不然滚动还有啥

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在Gridview实现Textview跑马灯效果

默认是下面的属性添加TextView中: android:ellipsize="marquee" android:focusableInTouchMode="true" android:gravity="center" android:marqueeRepeatLimit="marquee_forever" android:scrollHorizontally="true" android:singleLi

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

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

Android 使用TextView实现跑马灯效果

前言 我们在开发中经常会遇到一个小问题.比如下面一个小例子: 这个文字太长,单行中导致无法全部显示出来,这就是今天要实现的功能. 当然,百度中也有很多这种解决方案. 其中有一种,例如: <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:ellipsize=&q

自定义TextView使之具有跑马灯的效果

一.问题的引入 使用普通的textview跑马的效果,一开始没有焦点事件不会进行滚动,button有焦点事件,但是比较难看,因此需要自定一个TextView 一出生就有焦点 然后需要自定义一个textview FocusedTextView.java package com.xuliugen.mobilesafe.ui; import android.content.Context; import android.util.AttributeSet; import android.view.Vi