添加触摸开始的节点

时间:2016-11-15 20:23:17

标签: swift xcode nodes touchesbegan

我正在和Swift一起玩游戏。 我需要在我按屏幕的地方添加节点,我知道这不是来自其他星球,但我不能这样做。

2 个答案:

答案 0 :(得分:0)

高度简化的示例可能如下所示:

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    guard let touch = touches.first else { return }
    let location = touch.location(in: self)
    let node = SKNode()
    node.position = location
    addChild(node)
}

答案 1 :(得分:0)

以下是点按以下内容添加标签的方法:

    class ViewController: UIViewController{
        private var labels = [UILabel]()
        override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) {
            guard let touch = touches.first else {
                return
            }
            for label in labels {
                if label.frame.contains(touch.location(in: view)) {
                    label.removeFromSuperview()
                    return
                }
            }
            let label = UILabel()
            view.addSubview(label)
            labels.append(label)
            label.text = "touch"
            label.sizeToFit()
            label.center = touch.location(in: view)
        }
    }