是这样的,用cocostudio做的ui。然后在各个类中读取此ui的json文件。最后我嫌麻烦,直接单独建立了一个类,类里面的方法就是加载各个ui,在用一个单例创建一个唯一的实例。编译时没问题,但是在链接的时候出问题。说是lnk2001 无法解析外部命令。
class UIlibs
{
private:
UIlibs();
~UIlibs();
static UIlibs* getUilibs;
public:
static UIlibs * GetInstance(void)
{
if (getUilibs == NULL)
getUilibs = new UIlibs();
return getUilibs;
}
void createBetGameUi();
void createMainGameUi();
UILayer* mainGameUilayer;
UILayer* betUilayer;
Widget* gamewidget;
Widget* betwidget;
};是用widget的方法读取的json文件。环境 是cocos2d-x 2.2.6 cocostudio 1.6 vs2013 报错误 HelloWorldScene.obj : error LNK2001: 无法解析的外部符号 "private: static class UIlibs * UIlibs::getUilibs" (?getUilibs@UIlibs@@0PAV1@A) 1>D:\cocos2d-x-2.2.6\projects\Clown\proj.win32\Debug.win32\Clown.exe : fatal error LNK1120: 1 个无法解析的外部命令 在mac机上运行也是同样的错误 cocos2d::extension::CocoLoader::ReadCocoBinBuff(char*)", referenced from: cocos2d::extension::CCDataReaderHelper::addDataFromBinaryCache(char const*, cocos2d::extension::_DataInfo*) in CCDataReaderHelper.o cocos2d::extension::CCComRender::serialize(void*) in CCComRender.o cocos2d::extension::GUIReader::widgetFromBinaryFile(char const*) in GUIReader.o cocos2d::extension::SceneReader::createNodeWithSceneFile(char const*, cocos2d::extension::AttachComponentType) in SceneReader.o "cocos2d::extension::CocoLoader::CocoLoader()", referenced from: cocos2d::extension::CCDataReaderHelper::addDataFromBinaryCache(char const*, cocos2d::extension::_DataInfo*) in CCDataReaderHelper.o cocos2d::extension::CCComRender::serialize(void*) in CCComRender.o cocos2d::extension::GUIReader::widgetFromBinaryFile(char const*) in GUIReader.o cocos2d::extension::SceneReader::createNodeWithSceneFile(char const*, cocos2d::extension::AttachComponentType) in SceneReader.o 请求大神指点一二,小弟不胜感激。