`

走马灯效果文字

 
阅读更多
走马灯效果的代码,对TextView进行一下重写即可:
public class AutoScrollTextView extends TextView {

	public final static String TAG = AutoScrollTextView.class.getSimpleName();
	private float mTxtLength = 0f;// 文本长度
	private float step = 0f;// 文字的横坐标
	private float y = 10f;// 文字的纵坐标
	private float mInitX = 0.0f;// 初始文字坐标
	private float mEndX = 0.0f;// 判断文字左面坐标.
	private Paint paint = null;// 绘图样式
	private String text = "";// 文本内容

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

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

	public AutoScrollTextView(Context context, AttributeSet attrs, int defStyle) {
		super(context, attrs, defStyle);
	}

	public void init() {
		paint = getPaint();
		text = getText().toString();
		mTxtLength = paint.measureText(text);
		step = mTxtLength;
		mInitX = getLeft() + getLayoutParams().width + mTxtLength;
		mEndX = getLeft() + getLayoutParams().width + mTxtLength * 2;
		y = getTextSize() + getPaddingTop();
		invalidate();
	}

	@Override
	public void onDraw(Canvas canvas) {
		canvas.drawText(text, mInitX - step, y, paint);
		step += 1;
		if (step > mEndX) {
			step = mTxtLength;
		}
		invalidate();
	}

}


在Activity中调用一下init()方法即可.

布局文件还是贴一下吧:
<com.ex.AutoScrollTextView
        android:id="@+id/TextViewNotice"
        android:layout_width="100dp"
        android:layout_height="30dp"
        android:layout_marginLeft="100dp"
        android:layout_marginTop="100dp"
        android:background="#EEE"
        android:paddingTop="5dp"
        android:text="浮动的文字欢饮你......."
        android:textColor="#000"
        android:textSize="15sp" >
    </com.ex.AutoScrollTextView>



今天补上一种系统自带的方法:
<TextView
        android:id="@+id/mTxt"
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="100dp"
        android:ellipsize="marquee"
        android:fadingEdge="none"
        android:focusable="true"
        android:focusableInTouchMode="true"
        android:marqueeRepeatLimit="marquee_forever"
        android:scrollHorizontally="true"
        android:singleLine="true"
        android:text="开放平台成网络淘金下一 ..."
        android:textColor="@android:color/white"
        android:textSize="18dip" />


直接设置对应TextView的文本内容即可.
分享到:
评论

相关推荐

    TextView 实现文字滚动播放效果效果(跑马灯)

    android:text="这是一段很长很长的文字,将会实现跑马灯效果" /&gt; ``` 对应的Java代码设置: ```java TextView textView = findViewById(R.id.textView); textView.setMarqueeRepeatLimit(0); textView....

    跑文字上下、左右滚动跑马灯效果

    跑文字上下、左右滚动跑马灯效果,欢迎指正

    跑马灯文字滚动

    在IT行业中,"跑马灯文字滚动"是一种常见的视觉效果,尤其在电子显示屏、网站、APP界面设计中经常被用到。它通过让文字或信息像霓虹灯一样连续滚动,来展示大量的信息或者吸引用户的注意力。这个效果通常用于有限的...

    unity实现简单跑马灯效果

    跑马灯效果,又称为滚动文字或走马灯,是指内容在一个固定区域内不断循环滚动,仿佛文字或图像在背景上移动。在Unity中,这种效果可以通过改变物体的位置或大小来实现。对于文本跑马灯,我们可以使Text组件的锚点...

    Qt 实现的跑马灯效果

    在跑马灯效果中,QLabel通常被用来作为文字滚动的载体,通过改变其几何形状和文字位置来模拟跑马灯效果。 2. **QTimer**:Qt的定时器类QTimer是实现动态效果的关键。通过定时触发特定事件(如更新QLabel的位置),...

    vue实现文字跑马灯效果

    使用 vue 绑定style属性实现文字跑马灯效果。。。。。。。

    跑马灯文字滚屏效果

    超简单跑马灯文字滚屏效果,兼容IE、火狐

    Android文字跑马灯效果

    在Android开发中,"文字跑马灯效果"是一种常见的用户界面设计,主要用于显示较长的文本内容,当空间有限时,可以实现文本的自动循环滚动,给人一种动态的效果,类似传统电子显示屏上的跑马灯。这种效果通常用在通知...

    C#制作的文字滚动特效-跑马灯.7z

    在本文中,我们将深入探讨如何使用C#编程语言制作文字滚动特效,也就是通常所说的跑马灯效果。这种特效常见于各种界面设计中,为信息展示提供了动态和吸引人的视觉体验。跑马灯不仅可以循环滚动文字,还能显示滚动...

    各种跑马灯效果(水平、垂直)

    跑马灯效果是一种常见的动态视觉展示方式,在UI设计和编程领域中广泛应用,尤其在移动应用、网站设计和游戏开发中尤为常见。这种效果通常表现为文字或图像在屏幕边缘循环滚动,仿佛是LED显示屏上的信息流动,因此...

    jQuery 跑马灯效果

    **jQuery跑马灯效果**是一种常见的网页动态展示技术,它通过自动循环滚动或切换内容,如图片、文字或链接,来吸引用户注意力并提供信息。在网页设计中,这种效果通常用于广告展示、新闻滚动或者产品展示等场景。在本...

    Delphi实现透明跑马灯效果

    在Delphi中实现透明跑马灯效果涉及到图形用户界面(GUI)编程,特别是与控件、事件处理和自定义绘图相关的技术。跑马灯效果通常是指文本或图像在界面上按照某种方式循环滚动,而透明则涉及到控件的背景处理和颜色...

    跑马灯特效--文字滚动

    跑马灯特效,又称为走马灯或者滚动字幕,...在实际开发中,可以根据具体需求调整代码,创造出更具吸引力的跑马灯效果。提供的文件"texiao3002_1560681147"可能是跑马灯特效的示例代码或资源,读者可以下载学习并实践。

    android跑马灯效果,失去焦点也可以实现

    标题提到的"android跑马灯效果,失去焦点也可以实现"意味着即使控件没有获取到焦点,仍然可以保持滚动效果。这在设计用户界面时特别有用,因为有时候我们希望信息能够持续吸引用户的注意力,而不仅仅是当用户交互时...

    文字自动滚动效果_俗称:文字跑马灯效果

    在网页设计和开发中,"文字自动滚动"或"文字跑马灯效果"是一种常见的动态显示文本的方法。这种效果使得有限的空间内可以展示更多的信息,通常用于新闻标题、滚动公告或者广告横幅等场景。跑马灯效果通过不断滚动文本...

    C# 跑马灯 C#滚动文字

    本文将深入探讨如何在C#中实现跑马灯效果,特别是滚动文字的实现。 首先,我们需要了解C#中实现滚动文字的基本元素。这通常涉及到Windows Forms或WPF框架中的控件。在Windows Forms中,我们可以使用`Label`控件配合...

    textview(跑马灯效果)文字长短不限循环播放

    标题“textview(跑马灯效果)文字长短不限循环播放”所描述的就是这样一个功能,即在TextView中实现一个不受文本长度限制、可以自动循环滚动的跑马灯效果,而且这个效果不需要TextView获取焦点也能运行。...

    PB 文字走马灯 跑馬燈

    "走马灯"或"跑马灯"是编程领域中对一种特殊文字动画效果的俗称,这种效果可以使文字像霓虹灯一样在界面上连续滚动或循环显示,从而吸引用户的注意力。 在PowerBuilder中实现这种效果,主要涉及到以下几个关键知识点...

    跑马灯效果的多种实现

    跑马灯效果,又称滚动字幕或走马灯,是一种常见的UI设计元素,常用于显示过多信息无法一次性完全展示的情况,如网站公告、新闻标题滚动等。在IT领域,跑马灯效果可以通过多种编程语言和技术来实现。下面,我们将详细...

    多个跑马灯效果 demo

    android:text="这是第一个跑马灯效果的文字" android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:scrollHorizontally="true" android:singleLine="true" /&gt; ...

Global site tag (gtag.js) - Google Analytics