类型“ SKNode”的值没有成员“纹理”。但是确实

时间:2019-03-17 16:19:14

标签: swift sknode

我创建了这个SpriteKitNode:

let examp = examps[examps.count-1] // examps is a global array with SKNodes inside of it 

但是当我尝试更改其纹理时,会收到此错误:

examp.texture = SKTexture(imageNamed: "examp2")
  

“ SKNode”类型的值没有成员“纹理”

但是,它的值为'texture',所以我不知道解决方案是什么。

https://imgur.com/a/s1V0XZF

1 个答案:

答案 0 :(得分:0)

examps[SKNode]。这意味着exampSKNode,而不是SKSpriteNode,即使examps[examps.count-1]恰好持有SKSpriteNode

要访问texture属性,您需要将examps[examps.count-1]的结果强制转换为SKSpriteNode

if let examp = examps[examps.count-1] as? SKSpriteNode {
    examp.texture = SKTexture(imageNamed: "examp2")
}