如何在 Unity3d 中使用协程更新计数器?

How do I update a counter using coroutine in Unity3d?

我正在尝试进行基本的 1、2、3 倒计时,但是当我将 countDown 传递给 countTxt 字段时,即使使用 for 循环也没有任何变化。我可以在 Unity 检查器中看到倒计时如何工作以及从 3 到 0,但在我的文本字段中看不到。

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

public class CountDown : MonoBehaviour {
public int countDown;
public Text countTxt;
public int countMax ;

void Update () {
    StartCoroutine (GetReady ());
}

IEnumerator GetReady () {
        for (countDown = countMax; countDown > 0;countDown--)
        {
            countTxt.text = countDown.ToString();
            yield return new WaitForSeconds(1);
        }
    }
}

您在 Update() 中调用协程,所以它一直被调用....它应该在 Start() 中调用