Unity終止協程的問題


最近在項目開發的時候發現,調用StopCoroutine()來終止一個正在運行的協程的時候,無法終止協程。然后通過查資料發現了一下兩種辦法:

利用字符串來啟動和終止協程:

比如,我有一個協程IEnumerator MoveAnimation(),啟動時要用StartCoroutine("MoveAnimation"),終止的時候用StopCoroutine("MoveAnimation"),才能正確終止協程。

要想傳參,可以使用 StartCoroutine("MoveAnimation", object)來傳參。

不用字符串來啟動和終止協程的方法:

定義一個Coroutine類型的變量coroutine,在StartCoroutine(MoveAnimation())后接收返回的值:

coroutine=StartCoroutine("MoveAnimation");

然后終止協程的時候利用StopCoroutine(coroutine)來終止。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM