jef*_*ind 5 initialization ios swift
我刚刚继承了一个包含Apple的ResearchKit(RK)的iOS项目.
我已经升级到最新版本的RK以及Swift 3.虽然我在iOS和RK工作过,但我仍然不太自信.不管怎么说,有一类叫做SurveyTask它实现了ORKOrderedTask从RK.
不能覆盖已标记为不可用的'init'
最后这个功能,stepz已经定义,我们有:
super.init(identifier: "survey", steps: stepz)
Run Code Online (Sandbox Code Playgroud)
我检查了ORKOrderedTask类定义,它有一个init函数.
我一直在阅读有关初始化器但没有找到任何东西的信息.使用override或convenience在之前init在SurveyTask不改变任何东西.同样的错误.任何帮助将不胜感激.
XCode版本8.1.
dee*_*eej 10
以下是您可以模仿无参数初始化程序并避免unavailable错误的方法:
class MyClass: ParentWithUnavailableInitializer {
init(workaround _: Void = ()) {
// Call a designated initializer
super.init(param: "a very sensible value")
}
}
// At a call site
let obj = MyClass()
Run Code Online (Sandbox Code Playgroud)
适用于Swift 3.2和Swift 4.
| 归档时间: |
|
| 查看次数: |
1350 次 |
| 最近记录: |