我不是在使用故事板上的UIViewController,我希望有一个自定义的init函数,在这里我传递某个对象的NSManagedObjectID.我只想打super.init(),就像我在Objective-C中所做的那样

init(objectId: NSManagedObjectID) {
    super.init()
}

但是我得到以下编译器错误:

必须调用超类UIViewController的指定初始值设定项

我能不能不再这样做了?

推荐答案

UIViewController指定的初始值设定项为initWithNibName:bundle:.你应该叫它,而不是那个.

http://www.bignerdranch.com/blog/real-iphone-crap-2-initwithnibnamebundle-is-the-designated-initializer-of-uiviewcontroller/

如果没有nib,则为nibName传入nil(Bundle 包也是可选的).然后,您可以在loadView中构建自定义视图,也可以通过向viewDidLoad中的self.view添加子视图来构建自定义视图,这与您过go 的做法相同.

Ios相关问答推荐

UIImage大小调整工作,但转换为上传数据时恢复到原始大小

在SwiftUI中使用系统图像和色调创建圆形按钮

如何修复使用EFCore和SQLite的.Net MAUI iOS应用程序上的当前应用程序不支持NullabilityInfoContext?

IFrame内容拒绝仅在iOS浏览器上加载-即使发布了内容-安全-策略(CSP)框架-祖先指令

SwiftUI-工作表不显示导航标题

在 Android 和 iOS 应用程序上下文中阻止后台线程有哪些缺点?

在 SwiftUI 中以编程方式插入内嵌图像

Strange UIView.animate更改UIButton标题 colored颜色 的行为

为什么这个 init 被分派到一个内部扩展 init?

为什么常量属性可能在 Swift 类中被初始化两次?

iOS 如何使用 Alamofire 解析 JSON 可编码数组

如何让替换视图淡入旧视图而不是交叉淡入淡出?

通过MatchedGeometryEffect向上滑动视图

如何使用 sendAsynchronousRequest:queue:completionHandler:

iOS 中的 Crashlytics 不会继续通过 Fabric 应用程序中的构建您的项目

故事板中的 colored颜色 与 UIColor 不匹配

判断从 JSON 字符串返回的 Objective-C 中的空值

iOS7 UITextView contentsize.height 替代

文本未包含在 swift UI 中

如何在 iOS 中获取正在运行的应用程序的名称