[英]C# function call doesn't work
我有以下代碼,但是我的函數Insert()
的調用不起作用。
void Update() {
if (Input.GetKeyDown(KeyCode.Space)) {
Insert();
}
}
public IEnumerator Insert() {
WWWForm form = new WWWForm();
//add some fields
WWW request = new WWW(url, form);
yield return request;
string result = request.text;
if (result == "error") {
yield return null;
}
print(result);
}
我使用Unity,如果我將Insert()
函數命名為Start()
(直接在start上調用),則該函數運行良好,沒有問題。
您知道問題在哪里以及如何解決嗎? 非常感謝。
您沒有使用IEnumerators所需的StartCoroutine。
嘗試以下方法:
void Update() {
if (Input.GetKeyDown(KeyCode.Space)) {
StartCoroutine(Insert());
}
}
另外,此答案已在評論中告知了您幾次,但我發布答案是為了解決問題,並使遇到此問題的其他人更容易更快地找到答案。
嘗試
if (Input.GetKeyDown("space"))
而不是if (Input.GetKeyDown(KeyCode.Space))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.