天天看點

Cocos2d-x場景生命周期函數介紹

層(layer)的生命周期函數有如下

init()。初始化層調用。

onenter()。進入層時候調用。

onentertransitiondidfinish()。進入層而且過渡動畫結束時候調用。

onexit()。退出層時候調用。

onexittransitiondidstart()。退出層而且開始過渡動畫時候調用。

cleanup()。層對象被清除時候調用。

提示  層(layer)繼承于節點(node)這些生命周期函數根本上是從node繼承而來。事實上所有node對象包括場景、層、精靈等都有這些函數隻要是子類化這些類都可以重寫這些函數來處理這些對象的不同生命周期階段事件。

我們重寫helloworld層的中幾個生命周期函數代碼如下

注意 在重寫層生命周期函數中第一行代碼應該是調用父類的函數例如helloworld::onenter()中第一行應該是layer::onenter()函數如果不調用父類的函數可能會導緻層中動畫、動作或計劃無法執行。

如果helloworld是第一個場景當啟動helloworld場景時候它的調用順序如下圖所示

Cocos2d-x場景生命周期函數介紹

更多内容請關注最新cocos圖書《cocos2d-x實戰 c++卷》

歡迎加入cocos2d-x技術讨論群257760386

《cocos2d-x實戰 c++卷》現已上線各大商店均已開售

《cocos2d-x實戰 c++卷》源碼及樣章下載下傳位址

歡迎關注智捷ios課堂微信公共平台

Cocos2d-x場景生命周期函數介紹

繼續閱讀