我正在从我的ViewController
类中这样调用一个类函数:
Buttons.set_cornerRadius(10)
我有另一个.swift
文件,其中我声明了该函数:
class Buttons {
class func set_cornerRadius(radius: CGFloat) {
ViewController().someButton.layer.cornerRadius = radius
}
}
当我尝试运行这段代码时,它会抛出错误:
"Unexpectedly found nil while unwrapping an optional Value"
。我已经检查了Storyboard-IBOutlet连接,一切都连接正确。如果我像这样在同一类中调用方法,一切正常:
class ViewController: UIViewController {
@IBOutlet weak var someButton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
set_cornerRadius(10)
}
func set_cornerRadius(radius: CGFloat) {
someButton.layer.cornerRadius = radius
}
}
我该如何解决这个问题?我做错了什么或者没有理解对吗?
提前感谢您的帮助。
ViewController
实例,而不是一些通用的实例化。 - IanViewController
的扩展即可,这样就不需要将它放在同一个文件中了。 - Ian