c++读取ccbi

loader类文件:

需要定义CCB_STATIC_NEW_AUTORELEASE_OBJECT_METHOD(ButtonTestLayerLoader, loader);

这个宏定义是定义静态的loader方法,在注册registerCCNodeLoader("TestHeaderLayer", TestHeaderLayerLoader::loader());的时候调用

这里的注册是为了读取ccbi中遇到同名的类时候,找到对应的解析器,进行解析。例如CCLayer类就使用CCLayerLoader


需要定义CCB_VIRTUAL_NEW_AUTORELEASE_CREATECCNODE_METHOD(ButtonTestLayer);

这个宏是在loader调用createCCNode函数的时候,返回对应的类实例。展开宏可以看到return T::create();如果是CCLayer类型,则返回的是CCLayer

原文地址:https://www.cnblogs.com/pangblog/p/3265390.html