Unity3D 文字滚动跑马灯效果

需求

在日常游戏中,文字滚动效果是比较常用的。例如日常游戏顶部的新闻公告,聊天系统的文字滚动,都属于这个范围。

思路

由于使用的地方比较广泛,所以希望能够尽量独立的游戏之外,能够做到随处使用的功能。文字显示属于UI范畴,直接使用unity3d中的GUI功能是比较合适的。

实现

一、新闻公告类

新闻公告类的文字滚动一般都是由左向右,或者由下至上滚动的,并且多是单行单列的模式。

public class Lamp : MonoBehaviour {

    public float scrollviewWidth;
    public float scrollviewHeight;
    public float moveSpeed;
    public GUISkin guiSkin;

    private float textPositionX = 10f;

    void OnGUI()
    {
        GUI.skin = guiSkin;
        float scrollviewPositionX = (Screen.width - scrollviewWidth)/2;//居中

        //开始滚
        GUI.BeginScrollView(new Rect(scrollviewPositionX, 10, scrollviewWidth, scrollviewHeight), Vector2.zero, new Rect(10, 10, scrollviewWidth, scrollviewHeight));
        GUI.Label(new Rect(textPositionX,10,770,40),"翻滚吧!大爷!!");
        textPositionX += Time.deltaTime*moveSpeed;
        //结束滚
        GUI.EndScrollView();
    }
}

Lamp

总结

时间: 2024-10-03 19:24:46

Unity3D 文字滚动跑马灯效果的相关文章

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

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

android实现跑马灯效果

第一步:新建一个新项目,MarqueeTextView 首先为了观察到跑马灯效果,将要显示的文字极可能 写长.在strings.xml文件夹里面将 <string name="hello_world">hello_world</string> 修改为 <string name="hello_world">我的代码很长,真的很长,不行你看看,实际上是骗你的,逗比,hiahia~~~~</string> 默认情况下,显示文

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

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

iOS LED跑马灯效果实现

iOS中实现LED跑马灯效果 实现原理是使用scrollView, 将需要滚动的label添加两次到 scrollView的subView下面, 然后通过滚动scrollView来实现跑马灯效果. 具体实现代码如下: // // KMScrollLabel.swift // StopSmokingPrograms // // Created by Fran on 15/11/2. // Copyright © 2015年 kimree. All rights reserved. // impor

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

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

android textview 实现跑马灯效果

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

Android 自定义View实现竖直跑马灯效果

首先给出效果图 中间的色块是因为视频转成GIF造成的失真,自动忽略哈. 大家知道,横向的跑马灯android自带的TextView就可以实现,详情请百度[Android跑马灯效果].但是竖直的跑马灯效果原生Android是不支持的.网上也有很多网友实现了自定义的效果,但是我一贯是不喜欢看别人的代码,所以这篇博客的思路完全是我自己的想法哈. 首先,我们需要给自定义的控件梳理一下格局,如下图所示: 1.首先我们将控件分为三个区块,上面绿色部分为消失不可见的块,中间黑色部分为可见区域,下面红色部分为欲

C# 模拟跑马灯效果(2种)

1 #region 跑马灯效果方法 2 /// <summary> 3 /// 文字进入左侧后从右侧出来 4 /// </summary> 5 private void LabelRun() 6 { 7 if ((lbMsg.Location.X + lbMsg.Width) > 0) 8 { 9 lbMsg.Left = lbMsg.Left - 5; 10 } 11 else//设置文字初始位置 12 { 13 lbMsg.Left = pBox.Width; 14 }