objective-c - 更新附加到 SKNode 的 SKShapeNode

标签 objective-c sprite-kit

我正在尝试修改我已经添加到 SKNode 的 SKShapeNode。

这是我将 SKNode 添加到屏幕并将 SKShapeNode 附加到它的代码。现在我正在尝试修改该特定 SKShapeNode 的颜色,但我不确定该怎么做。有什么建议吗?

SKNode *dot = [SKNode node];

SKShapeNode *circle = [SKShapeNode node];
circle.path = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, 20, 20)].CGPath;
circle.fillColor = [UIColor blueColor];
circle.strokeColor = [UIColor blueColor];
circle.glowWidth = 5;
[dot addChild:circle];

[self addChild:dot];

最佳答案

尝试删除所有 child 并重新添加新 child

[dot removeAllChildren];
[dot  addChild:circle];

关于objective-c - 更新附加到 SKNode 的 SKShapeNode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20179937/

相关文章:

objective-c - 从方法返回 2 个结果的最佳方法是什么

ios - 参数 OpenGL 到 SKShader

ios - 未调用第二个 ViewController 中的委托(delegate)方法

ios - SpriteKit 动画未可靠执行

objective-c - 静态实例使用 ARC 过早释放属性

objective-c - 使用 NSKeyedArchiver 解码然后编码未知类?

swift - 如何在 Swift 中引用来自不同类的另一个变量

ios - 我可以使用 SpriteKit 在 iOS 上从非矩形区域发射粒子吗?

swift 2 : Why is it necessary to apply ‘as!’ after getting new object by ‘copy()’ ?

ios - SKPhysicsWorld 在缩放节点中模拟物理