更新到Xcode 8.3后,UIButton无法正常工作

时间:2017-03-30 02:57:05

标签: swift xcode swift3 uibutton

我更新到Xcode 8.3后,以下代码在Xcode Playgrounds中无效。在使用Xcode 8.2.1之前,我能够点击按钮,然后动作将会出现,但是当我点击按钮时,现在什么也没发生。

import UIKit
import SpriteKit
import PlaygroundSupport

let view = SKView(frame: CGRect(x: 0, y: 0, width: 550, height: 575))
let scene = SKScene(size: CGSize(width: 550, height: 575))
scene.backgroundColor = UIColor.white
scene.scaleMode = SKSceneScaleMode.aspectFit
view.presentScene(scene)

class Responder: NSObject {
    @objc func nextScene() {
        print("Next button pressed!")
    }
}
let responder = Responder()

let nextButton = UIButton(type: .system)
nextButton.frame = CGRect(x: 250, y: 557.5, width: 40, height: 15)
nextButton.setTitle("Next", for: .normal)
nextButton.titleLabel?.font = UIFont(name: "Marker Felt", size: 17)
nextButton.tintColor = .black
nextButton.addTarget(responder, action: #selector(Responder.nextScene), for: .touchUpInside)
view.addSubview(nextButton)

PlaygroundPage.current.liveView = view

编辑:我更新了我的代码,以便它包含PlaygroundPage.current.liveView = view以及用于设置视图和场景的代码。

1 个答案:

答案 0 :(得分:0)

您没有在代码中为游乐场设置实时视图。通常,操场将执行代码并停止 - 它不会等待输入或事件等,除非您明确指定它应该。

您应该在游乐场的末尾添加以下行,以指定canvas是实时视图 - 如果是,我无法知道,因为您没有提供{{1的实现}}

canvas