Unity——两种进度条的制作

一、进度条-线状

Step1:创建Slider和Text,随便摆一下

 Step2:写脚本

using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class LineLoad : MonoBehaviour
{
    //进度显示
    public Text text;
    //进度条
    public Slider progressSlider;

    private void Start()
    {
        StartCoroutine(LoadScene());
    }
    IEnumerator LoadScene()
    {
        AsyncOperation operation = SceneManager.LoadSceneAsync("ExcelScene");

        while (!operation.isDone)
        {
            progressSlider.value = operation.progress;

            text.text = operation.progress * 100 + "%";

            if (operation.progress >= 0.9f)//如果进度条已经到达90%
            {
                progressSlider.value = 1; //那就让进度条的值编变成1
                text.text = "加载完成!";
            }
            yield return null;
        }
    }
}

Step3:把场景加载到BuildSetting中

Done!

二、进度条-饼状

Step1:找到类似圆环的图片,做成Image,再加一个Text

 Step2:把Image的类型改成Filled类型,起始点Origin改成Top,Clockwise改为false

              fillAmount改为0

 Step3:写脚本

using System.Collections;
using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;

public class CircleLoad : MonoBehaviour
{
    public Image m_Image;
    public Text m_Text;

    private void Start()
    {
        m_Image.fillAmount = 0;

        StartCoroutine(LoadSceneCircle());
    }

    IEnumerator LoadSceneCircle()
    {
        AsyncOperation operation = SceneManager.LoadSceneAsync("ExcelScene");

        while (!operation.isDone)
        {
            m_Image.fillAmount = operation.progress / 100f ;

            m_Text.text = operation.progress * 100 + "%";

            if (operation.progress >= 0.9f)//如果进度条已经到达90%
            {
                m_Image.fillAmount = 1; //那就让进度条的值编变成1
                m_Text.text = "加载完成!";
            }
            yield return null;
        }
    }
}

这里和上面不一样的地方是,这里主要用到了fillAmout属性,而进度条就只需要Slider的Process属性即可

怎么样,是不很简单?文章来源地址https://uudwc.com/A/8pY2n

阅读剩余 51%

原文地址:https://blog.csdn.net/leikang111/article/details/130423241

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请联系站长进行投诉反馈,一经查实,立即删除!

h
上一篇 2023年07月26日 19:48
下一篇 2023年07月26日 19:48