本文主要是介绍Unity3D注册事件和取消注册事件位置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近联调的时候遇到关于注册事件的问题。
第一个物体是同事只注册了事件,并没有取消事件的注册,隐藏挂脚步的物体时程序异常崩溃,检查后在void OnDisable () 函数中添上了。
第二个物体是再次运行中间又出现逻辑错误,经查找是因为事件没有注册成功,检查也写了但是写在了void Awake () 函数里面,物体经过
隐藏处理之后事件就注册不上了,这是肯定了,unity生命周期里void Awake ()只执行一次。所以最好的方案是把注册事件放到
void OnEnable()函数下面,取消注册事件放到void OnDisable () 函数下面,是最好的,也是最严谨的。
例:
void OnEnable()
{
xxx+=yyy;
}
void OnDisable ()
{
xxx-=yyy;
}
这篇关于Unity3D注册事件和取消注册事件位置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!