我正在尝试为我的应用程序重新配置脚本,在新的Unity3d更新版本中,StartCoroutine
似乎需要一个停止函数,但不确定该将函数放在哪里。
我被困在如何添加if语句来停止协程并修复致命错误的问题上。
我尝试在StartCoroutine之后添加StopAllCoroutines,如下所示:
void Start()
{
StartCoroutine(GetText());
StopAllCoroutines();
}
下面是完整的GET-API脚本:
void Start()
{
StartCoroutine(GetText());
StopAllCoroutines();
}
IEnumerator GetText()
{
UnityWebRequest www = UnityWebRequest.Get(json);
yield return www.SendWebRequest();
if (www.isNetworkError || www.isHttpError)
{
Debug.Log(www.error);
}
else
{
// Show results as text
string myText = www.downloadHandler.text;
var rate = (double)JToken.Parse(myText).SelectToken("bpi.USD.rate");
var rate2 = 1 / rate;
//response Text.text = rate2.ToString();
mText = GetComponent<TextMeshPro>();
mText.text = "BTC: " + rate2.ToString("0.########");
}
}
private void Update()
{
Start();
}
致命错误:协程继续失败
https://stackoverflow.com/questions/56176626
复制相似问题