2014-12-02 18 views
0

在钉子上的画面2 [参考图像] http://imgur.com/a/G9Skz捕捉精灵以其所有的孩子 - 的cocos2d-x 3.2英寸

在屏幕截图1使用者开关显示出来,其中用户做出的指甲设计(基本上是添加一些图层上钉)后!它看起来像screen3。

现在我想要的是,当用户回到屏幕1时,它应该看到他设计在指甲上的钉子。

我该怎么做?

谢谢!

PS:

我试图nail_sprite-> getTexture(),但它仅返回钉子精灵而不是其子。

nail_sprite的子项包括用户在运行时绘制某些东西的图层,所以我不能只拾取整个draw_layer,我只能捕获部分用户绘制的东西。

回答

1

第一种方法是通过参数传递选定的精灵指向下一个场景。因此,尝试这场景1:

var nailSprite1; 
var nailSprite2; 
var nailSprite3; 
//and so... 

var selectedNailSprite = nailSprite1; 

Scene3:

selectedNailSprite.addChild(otherSprite); 

场景1:

selectedNailSprite.getChildren(); 

并返回到场景1后,你将有精灵与所有的孩子。不要重新创建它,在场景之间共享它:)

第二种方法实现的目的是让场景3中的Sprite截图并将其保存在设备上。接下来,您可以在场景加载1.

第三种方法是从Scene3指甲的结构保存为XML或其它格式,并加载它在场景1:d

+0

非常感谢!你拯救了我的一天。 我要在我的场景中发布答案。 – 2014-12-03 16:33:51

0

这里是我在@sortris的光实施第一方法。

我在parentLayer中创建了一个方法addLayer,当我在子节点中添加一个图层时,我也调用了父级方法。 以及在stencil.drawDot的情况下,当我在子图层中绘制一个节点时,我通过调用父方法drawDot在父Sprite中绘制一个节点。

相关问题