Swift SKSpriteNode绘制顺序

标签 swift sprite-kit layer skspritenode

我在使用 SKSpriteNode 时遇到了一些问题。如果我这样做:

var node1=SKSpriteNode(imageNamed:"image1");
var node2=SKSpriteNode(imageNamed:"image2");

self.addChild(node1);
self.addChild(node2);

然后 image2 将出现在 image1 的前面(这很好)。

但是如果我这样做:

var node1=SKSpriteNode(imageNamed:"image1");
var node2=SKSpriteNode(color:UIColor.redColor(),size: CGSizeMake(0,0,300,300)));

self.addChild(node1);
self.addChild(node2);

然后image1会出现在node2-rectangle的前面。为什么要这样做?

最佳答案

令我惊讶的是,即使是编译——CGSizeMake 应该只接受 2 个参数(宽度、高度),而 CGRectMake 则需要 4 个(x、y、宽、高)。换句话说,看起来您正在创建大小为 (0,0)node2。试试……size:CGSizeMake(300,300)

关于Swift SKSpriteNode绘制顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25188509/

相关文章:

ios - 云 Firestore Swift : How to delete a query of documents

ios - 仅在 x 轴上移动 Sprite

swift - 如何在 spritekit 游戏中制作建筑计时器?

ios - 对 Sprite 应用滤镜?

objective-c - 将图层阴影绘制到 PDF 上下文

arrays - 在 Swift 代码中,数组接受 AnyObject,如果我们给出一个 Integer 和一个 Double,它会接受 Double 值,为什么?

ios - 我如何为 uipickerviews 设置多个数据数组?

ios - 即使没有互联网连接也能获得数据响应

android - 单击按钮时如何添加不同的图层

iOS 图层蒙版在 UIStackView 上不起作用