更新到 Xcode 6.1 后的"Use of property 'nibName' in base object before super.init initializes it"



我的iOS应用程序中有这段代码,用Swift编写:

class AddHomeViewController: UITableViewController, UITextFieldDelegate
{
    ...
    required override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) 
    {
        super.init(nibName: nibName, bundle: nibBundle)
    }

在更新到Xcode 6.1之后,我在super.init(nibName: nibName, bundle: nibBundle)行上得到了这些错误。它以前工作得很好:

Use of property 'nibName' in base object before super.init initializes it
Use of property 'nibBundle' in base object before super.init initializes it

更改super.init()行以使用OrNil参数可以修复问题:

super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)

最新更新