zoukankan      html  css  js  c++  java
  • UGUI实现打字的效果

    创建打字特效控制的脚本,将该脚本挂载都含有Text组件的对象上面,通过该脚本控制Text文本框的文字,以打字的效果显示文字。

    脚本

    using UnityEngine;
    using System.Collections;
    using UnityEngine.UI;
    
    public class TypewriterEffect : MonoBehaviour {
    
        public float charsPerSecond = 0.2f;//打字时间间隔
        private string words;//保存需要显示的文字
    
        private bool isActive = false;
        private float timer;//计时器
        private Text myText;
        private int currentPos=0;
    
        void Start () {
            timer = 0;
            isActive = true;
            charsPerSecond = Mathf.Max (0.2f,charsPerSecond);
            myText = GetComponent<Text> ();
            words = myText.text;
            myText.text = "";//获取Text的文本信息,保存到words中,然后动态更新文本显示内容,实现打字机的效果
        }
    
        void Update () {
            OnStartWriter ();
            }
    
        public void StartEffect(){
            isActive = true;
        }
        /// <summary>
        /// 执行打字任务
        /// </summary>
        void OnStartWriter(){
    
            if(isActive){
                timer += Time.deltaTime;
                if(timer>=charsPerSecond){//判断计时器时间是否到达
                    timer = 0;
                    currentPos++;
                    myText.text = words.Substring (0,currentPos);//刷新文本显示内容
    
                    if(currentPos>=words.Length) {
                        OnFinish();
                    }
                }
    
            }
        }
        /// <summary>
        /// 结束打字,初始化数据
        /// </summary>
        void OnFinish(){
            isActive = false;
            timer = 0;
            currentPos = 0;
            myText.text = words;
        }
    }
    我们什么都没有,唯一的本钱就是青春。梦想让我与众不同,奋斗让我改变命运!
  • 相关阅读:
    asp.net mvc 两级分类联动方法示例
    动手实践虚拟网络
    KVM 网络虚拟化基础
    LVM 类型的 Storage Pool
    KVM 存储虚拟化
    CPU 和内存虚拟化原理
    远程管理 KVM 虚机
    启动第一个 KVM 虚机
    准备 KVM 实验环境
    虚拟化
  • 原文地址:https://www.cnblogs.com/mengmengxia/p/8186004.html
Copyright © 2011-2022 走看看