我的代碼在升級到beta 4之前編譯正常,但是我認爲他們用IBOutlets改變了一些東西。在Swift中創建IBOutlet的結果'class is not constructible with()'
舊的語法是:
@IBOutlet var tableView: UITableView
新的語法是:
@IBOutlet weak var tableView: UITableView!
這是Xcode中產生的,當我從我的XIB文件的類文件Ctrl拖動默認代碼。
但是,使用這種新的語法,我無法構建我的類的實例。看看下面的例子:
class TestViewController: UIViewController {
@IBOutlet weak var tableView: UITableView!
}
然後,如果我嘗試做任何
var controller = TestViewController(nibName: nil, bundle: nil)
或
var controller = TestViewController()
我得到一個錯誤:
TestViewController is not constructible with()
什麼是正確的方式然後創建我的控制器的實例?目前唯一的辦法是讓網點可選,但我寧願不這樣做。
當我這樣做時,我得到一個運行時錯誤:「致命錯誤:使用未實現的初始化'初始化(編碼器:)爲類」 – danielbh