如何将 IBOutlet 连接到 class 类别的故事板
How to connect an IBOutlet to the storyboard from a class category
我有一个 CarViewController class,它有几个 class 类别文件。 CarViewController.m
进口 CarViewController+protected.h
。我想在 car+protected.h
中包含一些 IBOutlet 属性,以便我可以在我的 CarViewController.m
和其他 class 类别实现文件中使用它们。
我打开了助理编辑器,但无法从我的视图拖动到 CarViewController+protected.h
中的 Outlet。但是,我能够从 CarViewController+protected.h
中的奥特莱斯拖动到情节提要中的视图。
我 运行 我的代码最终出现 this class is not key value coding-compliant for the key
错误,这通常意味着您在项目中的某处有过时的连接。我已经检查过这个并清理了项目,但我似乎无法克服这个错误。
是否可以让 IBOutlets 连接到 class 类别头文件中的故事板?如果没有,我可以使用 class 扩展文件吗?我的 CarViewController class 变得非常大,我想使用类别或扩展来分解文件大小并更好地组织我的代码。
您不能在类别中声明属性,因此无法将 IBOutlet 属性 连接到类别。
在你的情况下,使 CarViewController
成为超级 class 并使子 class 继承自 class 可以解决问题。
我有一个 CarViewController class,它有几个 class 类别文件。 CarViewController.m
进口 CarViewController+protected.h
。我想在 car+protected.h
中包含一些 IBOutlet 属性,以便我可以在我的 CarViewController.m
和其他 class 类别实现文件中使用它们。
我打开了助理编辑器,但无法从我的视图拖动到 CarViewController+protected.h
中的 Outlet。但是,我能够从 CarViewController+protected.h
中的奥特莱斯拖动到情节提要中的视图。
我 运行 我的代码最终出现 this class is not key value coding-compliant for the key
错误,这通常意味着您在项目中的某处有过时的连接。我已经检查过这个并清理了项目,但我似乎无法克服这个错误。
是否可以让 IBOutlets 连接到 class 类别头文件中的故事板?如果没有,我可以使用 class 扩展文件吗?我的 CarViewController class 变得非常大,我想使用类别或扩展来分解文件大小并更好地组织我的代码。
您不能在类别中声明属性,因此无法将 IBOutlet 属性 连接到类别。
在你的情况下,使 CarViewController
成为超级 class 并使子 class 继承自 class 可以解决问题。