//Scene 的导入,成为了当前layer的子node
SceneNode= SceneReader::getInstance()->createNodeWithSceneFile("GameStartScene/Export/Resources/GameStartScene.json");
if(SceneNode== nullptr){
return nullptr;
}
this->addChild(SceneNode);
//自定义sprite的添加代码
Sprite* characterchoose1 = Sprite::create("Snipper.png",Rect(0,0,27,40);characterchoose1->setPosition(Point(30,30));
SceneNode->addChild(characterchoose1);
进入程序后scene正常加载,sprite的创建也没有错误,但是无法如期看到Snipper.png显示在当前画布上
希望知道的给个思路。
不知道怎么自己回答问题,只好继续编辑了。
这里我犯了个编程语言生命周期的问题,我在创建Sprite的代码的时候,采用Factory模式,但是在获取一个sprite的时候使用了局部变量指针并返回该局部变量导致生命周期在该函数返回时截止,局部变量指针地址被收回,导致sprite返回地址无效。