我创建了一个CCLayer
实例,然后我想创建相同的图层。
是否可以在cocos2-x中复制CCLayer
实例?
答案 0 :(得分:0)
AFAIK,现在在cocos2dx中没有这种可能性。因此,只需将图层创建到将返回结果图层的方法并调用此方法两次。
答案 1 :(得分:0)
在cocos2d-x中复制/深层复制对象不是一种选择。
最好的方法是为您的图层创建一个自定义类,然后调用::create()
方法两次以获得同一图层的两个实例,共享所有初始配置。
在MyLayer.h
:
USING_NS_CC;
class MyLayer : public CCLayer {
public:
CREATE_FUNC(MyLayer);
virtual bool init();
};
在MyLayer.cpp
:
bool MyLayer::init() {
if (!CCLayer::init())
return false;
// Insert here all custom initialization logic
return true;
}
然后你可以很容易地做到:
MyLayer *layer1 = MyLayer::create();
MyLayer *layer2 = MyLayer::create();
并且两个层将共享相同的初始方面/配置/ whatelse。