IBOutlet nil 而一切看起来都很好

Posted

技术标签:

【中文标题】IBOutlet nil 而一切看起来都很好【英文标题】:IBOutlet nil while everything looks OK hooked-up 【发布时间】:2016-02-20 10:11:02 【问题描述】:

我有一个奇怪的场景,其中 IBOutlet 为 nil,但看起来一切正常。

本例中的出口是 Main.storyboard 中的一个简单的 UILabel

我唯一能想到的就是一个错误,因为它是一个 Swift 项目,带有一个 Objective-C 组件 UIViewController。因此,当您尝试连接 IBOutlets 时,似乎存在问题。

我不知道出了什么问题..也许这是一个错误,或者我现在尝试太久时忽略了一些东西..

希望有人给出答案...

提前致谢!

【问题讨论】:

请显示错误。 您是否正在修改 PDFKBasicPDFViewer 类?为什么不创建一个子类? 【参考方案1】:

您在 PDFKBasicPDFViewer.m 中有错误的初始化程序

- (id)initWithCoder:(NSCoder *)aDecoder 应该使用[super initWithCoder],而不是[super init]

所以用下面的替换它:

- (id)initWithCoder:(NSCoder *)aDecoder 
    self = [super initWithCoder:aDecoder];
    if (self) 

    
    return self;

它会起作用的。

【讨论】:

哇.. srsly.. 完全忽略了那个.. 好收获! 同时使用您自己的变量来检出视图是否已加载是不好的。有[self isViewLoaded]; 完全同意...这只是一个简单的演示应用程序来显示问题。用于显示 PDF 的组件是第三方库...

以上是关于IBOutlet nil 而一切看起来都很好的主要内容,如果未能解决你的问题,请参考以下文章

Rails 4 表单数据保存为 Nil

CKQueryOperation queryCompletionBlock 返回一个 nil 游标

Swift Modal Self 变为 Nil

ScrollView 中的 IBOutlet 产生 nil

PFTableViewCell imageView 为 Nil(使用情节提要)

更改根视图控制器将 IBOutlet 设为 nil