gpt4 book ai didi

xcode - 触摸时更改 SKShapeNode 的颜色?

转载 作者:行者123 更新时间:2023-11-28 08:56:58 25 4
gpt4 key购买 nike

我有一个游戏,我触摸一个节点,它运行一些代码。触摸时如何更改 SKShapeNode 的颜色?例如,我尝试使用 node.fillColor = SKColor.blackcolor() 但它说我不能这样做,即使那是我最初创建 SKShapeNode 颜色的方式。

这就是所有触及开始的方法。

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 
for touch: AnyObject in touches {
let positionOfTouch = touch.locationInNode(self)
let node = nodeAtPoint(positionOfTouch)
node.userInteractionEnabled = true
node.fillColor = UIColor.whiteColor()

这是我正在使用的代码。但它一直说“SKNode 类型的值没有成员”fillColor“......但是”fillColor“在我的 DidMoveToView 中有效。谢谢

最佳答案

您可能接触到的节点可能是父节点或子节点 - SKNode,而不是 SKShapeNode。这就是 nodeAtPoint 返回的内容,而通用 SKNode 没有 fillColor。您需要通过测试来检查它是否是您期望的类(class)。像...

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) { 
for touch: AnyObject in touches {
let positionOfTouch = touch.locationInNode(self)
if let node = nodeAtPoint(positionOfTouch) as? SKShapeNode {
node.userInteractionEnabled = true
node.fillColor = UIColor.whiteColor()

关于xcode - 触摸时更改 SKShapeNode 的颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32794773/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com