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

问题描述 投票:0回答:1

我创建了这个SpriteKitNode:

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

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

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

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

但是,它具有'纹理'的值,所以我不知道解决方案是什么。

https://imgur.com/a/s1V0XZF

swift sknode
1个回答
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")
}
© www.soinside.com 2019 - 2024. All rights reserved.