这是我参与11月更文应战的第19天,活动概况查看:2021最终一次更文应战

推荐阅览

  • CSDN主页
  • GitHub开源地址
  • Unity3D插件共享
  • 简书地址
  • 我的个人博客
  • QQ群:1040082875

我们好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记住一键三连哦。

一、前言

前段时间共享了UGUI的每个组件的特点和运用方法,比方Text、Button、Image、Toggle、InputField、ScrollView等等。

接着共享了UGUI的一些原理,比方说UGUI的渲染形式、UGUI的缩放核算、UGUI的描点定位、UGUI的自动布局等等。

相信我们看完后会对UGUI有一个比较全面的认识了。

下面,就持续共享UGUI的UI组件进行应用的实例。

二、介绍及示意图

共享一下UGUI 文字完成进度等待、进度加载、进程等待演示动画。

完成思路比较简单,作用也比较简单,仅供我们参阅,谢谢

作用演示:

【Unity3D-UGUI应用篇】(一)使用Text实现进度等待动画

源代码

download.csdn.net/download/q7…

三、完成

3-1、首要搭建场景

新建一个1个text:

【Unity3D-UGUI应用篇】(一)使用Text实现进度等待动画

然后输入特殊符号:

【Unity3D-UGUI应用篇】(一)使用Text实现进度等待动画

3-2、编写代码

新建脚本TextLoading.cs,双击打开脚本修改脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class TextLoading : MonoBehaviour
{
    public Text m_Text;
    float m_CurProgressValue2 = 0;
    float m_ProgressValue2 = 100;
    float m_CurProgressValueTemp = 0;
    void Update()
    {
        if (m_CurProgressValue2 < m_ProgressValue2)
        {
            m_CurProgressValue2++;
        }
        if (m_CurProgressValue2 == 100)
        {
            m_CurProgressValue2 = 0;
        }
        m_CurProgressValueTemp = m_CurProgressValue2 / 100f;
        if (m_CurProgressValueTemp > 0.1f && m_CurProgressValueTemp <= 0.3f)
        {
            m_Text.text = "○○○○●";
        }
        else if (m_CurProgressValueTemp > 0.3f && m_CurProgressValueTemp <= 0.5f)
        {
            m_Text.text = "●○○○○";
        }
        else if (m_CurProgressValueTemp > 0.5f && m_CurProgressValueTemp <= 0.7f)
        {
            m_Text.text = "○●○○○";
        }
        else if (m_CurProgressValueTemp > 0.7f && m_CurProgressValueTemp <= 0.9f)
        {
            m_Text.text = "○○●○○";
        }
        else
        {
            m_Text.text = "○○○●○";
        }
    }
}

PS:运用两个暂时变量m_CurProgressValue2和m_ProgressValue2进行频率控制,假如想要加速变换的速度能够m_CurProgressValue2+=2;

3-3、将脚本附到恣意目标上,然后将text拖入卡槽中看作用

【Unity3D-UGUI应用篇】(一)使用Text实现进度等待动画