【发布时间】:2014-10-08 17:53:26
【问题描述】:
我正在尝试仅在代码中添加按钮。在 Xcode 模拟器中它可以完美运行,但在我的设备上却不行:
fatal error: unexpectedly found nil while unwrapping an Optional value
我的代码:
@IBOutlet weak var playButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
let image = UIImage(named: "playButton.png") as UIImage
playButton = UIButton.buttonWithType(UIButtonType.System) as UIButton
playButton.frame = CGRectMake(10, 10, 100, 100) // crash is here
playButton.center = CGPointMake(self.frame.width/2, self.frame.height/1.7)
playButton.addTarget(self, action: "transition:", forControlEvents: UIControlEvents.TouchUpInside)
playButton .setBackgroundImage(image, forState: UIControlState.Normal)
self.view?.addSubview(playButton)
}
有人可以帮助我吗?
【问题讨论】:
-
您的设备无法使用是什么意思?说它不起作用是没用的。
-
我无法启动它,我有一个致命错误:“致命错误:在展开可选值时意外发现 nil”
-
您提供的代码在哪里?这段代码在你的 viewController 的
viewDidLoad方法中吗? -
是的。你可以看到我的编辑
-
IBOutlet 不应该写在它外面吗?还有
self.frame确实是self.view.bounds,不是吗?