我有一个由子类添加到我的场景中的表视图,它像这样添加到场景中

override func didMove(to view: SKView) {

    gameTableView.frame = CGRect(x:14,y:70, width: frame.maxX / 1.08, height: frame.maxY/0.9)

    self.scene?.view?.addSubview(gameTableView)
    gameTableView.reloadData()

    universalBackButton = SKSpriteNode(color: SKColor.orange, size: CGSize(width: 100, height: 100))
    universalBackButton.position = CGPoint(x:frame.midX - universalBackButton.size.width * 0.7, y: -frame.maxY + universalBackButton.size.height)
    universalBackButton.zPosition = 100001
    self.scene?.addChild(universalBackButton)

    itemShopMenu = SKSpriteNode(color: SKColor.orange, size: CGSize(width: 75, height: 50))
    itemShopMenu.position = CGPoint(x:frame.midX + universalBackButton.size.width * 0.7, y: -frame.maxY + itemShopMenu.size.height)
    itemShopMenu.zPosition = 100001
    self.scene?.addChild(itemShopMenu)
}

但是,当我添加按钮以便可以离开表视图场景时,它们位于表视图的后面而不是它的前面。我几乎没有使用过带有场景的子视图的经验,也不知道如何使spritenodes在tableview的前面而不是在tableview的后面,因此可以利用它们执行函数。无论如何,我可以在表格视图的前面添加spritenodes以便可以按下它们吗?

最佳答案

SpriteKit经过优化,可在SKView中分层放置精灵,而不是放置在其他UIView之上。为什么不创建UI按钮并将其分层而不是使用sprites作为按钮来达到相同的效果?

let universalBackButton = UIButton()...

关于ios - Spritekit-Tableview前面的Spritenode,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43361148/

10-11 19:48