init()和onEnter()这俩个方法都是CCNode的方法。其区别如下:
1.其被调用的顺序是先init(),后onEnter()。
2.init()在类的初始化时只会调用一次。
3.onEnter在该类被载入场景的时候被调用,可能会发生多次。
4.CCLayer* cclayer = new MyLayer();
这种情况下,只会触发onEnter。
5.CCLayer* cclayer = MyLayer::create();
这样情况下,既会触发init()方法,也会触发onEnter()方法。
我是这样理解的init方法只在程序运行时执行一次,但是当在不同Layer之间多次切换,这样onEnter就会被多次执行。虽然还没用到过onEnter,以后要是用到不对会回来再修改的