如何更改可变数组中对象的name属性?

时间:2014-11-03 23:55:59

标签: ios arrays swift sprite-kit

我有一个名为removeRedCirclesArray的可变数组。数组中的每个对象都是带有name属性的SKShapeNode。我只想遍历数组中的每个对象并将对象的name属性更改为“bigRedCircle”。下面的代码是我认为它会如何工作,但它会产生这个Xcode错误:“@lvalue $ T7与String不同!”

for var x = 0; x <= removeRedCirclesArray.count - 1; x++ {
        removeRedCirclesArray[x].name = "bigRedCircle"
        }

完成这项看似简单的任务的正确方法是什么?

2 个答案:

答案 0 :(得分:0)

SKNode.name是一个字符串可选 var name:String?

您是否尝试在不将其展开到其他位置的情况下访问该值?它似乎不在此代码中。

请参阅 https://developer.apple.com/Library/ios/documentation/SpriteKit/Reference/SKNode_Ref/index.html#//apple_ref/occ/instp/SKNode/name

答案 1 :(得分:0)

我明白了。为了访问name属性,我必须通过执行以下操作告诉xCode我的数组中有什么类型的对象:

(removeRedCirclesArray.objectAtIndex(x) as SKShapeNode).name = bigRedCircle