我是Swift的新手.我继承了一个项目.我看到它在设备上运行.但是,当我签出代码时,它有很多错误.我能够清除错误.但是,我遇到了令我困惑的这一个.该项目也使用xib文件.这是代码.
required init(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
override init(frame: CGRect) {
super.init(frame: frame)
}
init(items:NSArray, viewController:AnyObject){
super.init()
//itemsArray = items
itemsArray = items as [AnyObject]
//commonInit(viewController as UIViewController)
commonInit(viewController as! UIViewController)
}
Run Code Online (Sandbox Code Playgroud)
我在init(items:NSArray,viewController:AnyObject)方法/函数下得到错误.错误指向"super.init()".它声明"必须调用超类'UIView'错误的指定初始值设定项"
我一直在搜索,谷歌搜索,问别人,什么都没有出现.我可以获得有关修复此错误的帮助,或者至少为什么会出现此错误?我想了解所以我可以成为一个更好的软件开发人员.
编辑:我要感谢大家的见解和帮助.我发现问题更大了.我做了super.init(frame:CGRect)中建议的更改.我不得不更改一个影响init函数的数组属性.
UIView指定的初始化程序是:
init(frame: CGRect)
init(coder aDecoder: NSCoder)
Run Code Online (Sandbox Code Playgroud)
您正在调用super.init()哪个是从其超类继承的初始化程序NSObject.正如编译器所建议的那样,使用其中一个初始化程序.
| 归档时间: |
|
| 查看次数: |
25849 次 |
| 最近记录: |