gpt4 book ai didi

iphone - 当节点不在 View 中时,如何删除它?

转载 作者:行者123 更新时间:2023-11-30 10:15:49 25 4
gpt4 key购买 nike

我有一个节点在 View 中掉落。一旦它位于 View 之外,我需要将其删除,以便我可以使用 if 语句调用函数来放置另一个。当它不再可见时如何删除它?目前它只调用该函数一次。

这是函数:

func dot() {
var dotTexture = SKTexture (imageNamed: "dot")
dotTexture.filteringMode = SKTextureFilteringMode.Nearest

var dot = SKSpriteNode(texture: dotTexture)
dot.setScale(0.5)
dot.position = CGPoint(x: self.frame.size.width * 0.5 , y: self.frame.size.height * 1.1)

dot.physicsBody = SKPhysicsBody (circleOfRadius: dot.size.height/2.0)
dot.physicsBody?.dynamic = true
dot.physicsBody?.allowsRotation = false

self.addChild(dot)

println("done")
}

这是调用该函数的 if 语句:

 override func update(currentTime: CFTimeInterval) {
/* Called before each frame is rendered */
if self.children.count == 0 {
dot()
}
}

最佳答案

我发现最简单的方法是在屏幕底部添加一个新的 SKNode 并使用与其碰撞来删除点。创建一个空白的 SKNode 并将其位置设置为稍微偏离屏幕,并将其宽度设置为等于场景宽度。然后设置 contactTestBitMask 以便您可以知道点何时与节点发生碰撞。然后删除didBeginContact(SKPhysicsContact: contact)方法中的点

关于iphone - 当节点不在 View 中时,如何删除它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30063177/

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