协程函数举例

协程简而言之就是无条件的跳出当前执行并挂起,直到外部调用下一次继续执行才开始,可以理解为挂起程序


using UnityEngine;
using System.Collections;

public class test : MonoBehaviour
{
    private string dialogStr = "协程打印字体测试";
    private string showMsg;
    private float speed = 5.0f;

    //注意要用IEnumerator作为返回属性
    IEnumerator ShowDialog()
    {
        float timeSum = 0.5f;
        while (showMsg.Length < dialogStr.Length)
        {
            timeSum += speed * Time.deltaTime;
            showMsg = dialogStr.Substring(0, System.Convert.ToInt32(timeSum));
            Debug.Log(showMsg);
            yield return null;//协程中断返回位置
        }
    }

    void Start()
    {
        showMsg = "";//初始化字符串变量
        StartCoroutine(ShowDialog());//要在这里添加协程函数名否则不能执行

    }

    void Update()
    {
        ShowDialog();
    }

}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值