iOS既没有调用init也没有调用initWithCoder [关闭]
Posted
技术标签:
【中文标题】iOS既没有调用init也没有调用initWithCoder [关闭]【英文标题】:iOS neither init or initWithCoder are been called [closed] 【发布时间】:2013-08-07 19:04:55 【问题描述】:我在viewController
中添加了一个tableView
,我需要初始化一些属性。但是-(id)init
或- (id)initWithCoder:(NSCoder*)aDecoder
都没有被调用。
我的头文件:
@interface myViewController : UIViewController <UITableViewDelegate,UITableViewDataSource>
你们中的任何人都知道为什么或如何调用任何一个 init 方法吗?
非常感谢您的帮助
【问题讨论】:
initWithNibName:bundle:
被调用了吗?
如何初始化 myViewController 的实例?
已在 AppDelegate 中初始化
他的意思是显示你在 AppDelegate 中初始化 ViewController 的代码。
【参考方案1】:
UIViewController reference 声明 initWithNibName:bundle:
是指定的初始值设定项。如果您在初始化期间做一些事情,那是您应该覆盖的那个。
更新: 没错,正如 Simon 所指出的,如果您使用情节提要,您将覆盖 initWithCoder:
(尽管我认为 OP 不是,正如他所说,initWithCoder:
没有得到调用)。
【讨论】:
如果您是从情节提要中实例化它,则不会!在这种情况下,被调用的初始化程序是-initWithCoder:
以上是关于iOS既没有调用init也没有调用initWithCoder [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
即使在 [[UIPickerView alloc] init] 之后设置了委托,也没有调用 UIPickerView 委托方法
没有 xib 文件的 alloc/init 初始化视图控制器不调用 viewDidUnload
为啥使用 JSONDecoder.decode 方法时没有调用 Decodable 的 init 方法?