【发布时间】:2016-11-26 20:32:31
【问题描述】:
是的,有几篇关于这个问题的帖子,但似乎都没有回答我的问题?
我在 nib 文件中创建了一个自定义视图并将其连接到代码,就像这里一样:
只有区别:
- 我的课程名为 EditorSectionView 而不是 CustomView
- 我的插座名称是 customView,而不是 contentView
除了代码,我做了以下,如要点中所述:
- 在 Interface-Builder 中,单击“File's Owner”并将文件所有者的自定义类设为“EditorSectionView”,而不是 View 本身
- 通过辅助编辑器将顶层视图(Interface Builder 中的“自定义视图”命名项)拖放到 EditorSectionView 以创建名为 customView 的出口。
每当我启动应用程序并单击应使用此自定义视图的按钮时,它都会因错误而崩溃:
“该类不符合键 customView 的键值编码”。
但是,当我查看连接检查器时,在我的 nib 文件中,没有“!”就像其他一些帖子指出的那样,一切似乎都很好。
我正在使用这样的 nib 文件来实例化它:
form +++ Section(field.name) {
let header = HeaderFooterView<EditorSectionView>(.nibFile(name: "EditorSectionView", bundle: nil))
}
这应该在 Eureka 中创建一个新的表单部分,如下所述:https://github.com/xmartlabs/Eureka/blob/master/README.md(在自述文件中搜索“您可以使用 .xib 文件中的自定义视图:”)。
我已经尝试了一个小时来解决这个问题,但我不知道还能做什么。所有连接都已设置(插座、UI 的类)、从 gist 复制的代码本身等。
我在这里做错了什么?
谢谢。
编辑:
如果我将身份检查器中的自定义类也设置为 EditorSectionView,不仅将 File's Owner 自定义类设置为 EditorSectionView,它不会再因“不符合键 XY 的编码”而崩溃,但它会因 EXC_BAD_ACCESS 开启而崩溃我正在调用 loadNibNamed() 的那一行。
我找到了here 的答案,我不应该为顶层视图设置自定义类,这将再次导致“不符合编码”。所以无论哪种方式它仍然不起作用......
【问题讨论】:
标签: swift nib eureka-forms