您当前的位置: 首页 >  ar

Peter_Gao_

暂无认证

  • 1浏览

    0关注

    621博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

unity中非monobehaviour类中无法使用StartCoroutine协程的解决方法

Peter_Gao_ 发布时间:2020-04-28 18:02:18 ,浏览量:1

在Unity中,有些类不继承自MonoBehaviour,若想要在这些类中使用StartCoroutine,则可以在类中新建一个继承MonoBehaviour的空类,再把这个空类当成组件挂到一个空对象上,然后就可以开启协程了

public class MonoStub : MonoBehaviour

{

}

new GameObject().AddComponent().StartCoroutine("Test1");   示例:

    // 创建一个继承 MonoBehaviour 的空类
    private class MonoStub:MonoBehaviour
    {

    }


    // 把计时器协程挂载到这个空类的组件上
    public void TimeCounter()
    {
        GameObject MonoStubTemp = GameObject.Find("MonoStubTemp");
        if (MonoStubTemp == null)
        {
            MonoStubTemp = new GameObject();
            MonoStubTemp.name = "MonoStubTemp";
            MonoStubTemp.AddComponent();
        }
        MonoStubTemp.GetComponent().StartCoroutine(TimerProcess());
        Debug.Log("开始计时器协程");
    }

 

关注
打赏
1664521772
查看更多评论
立即登录/注册

微信扫码登录

0.0360s