2015-10-31 41 views
1

创造网点我对本教程有问题,我无法理解:警告而NSTableCellView

http://www.brandpending.com/blog/2015/6/24/creating-a-custom-layout-nstablecellview-table-columns-with-a-storyboard-using-swift

本教程开始正常工作。但是,为了更好地理解XIB和故事板之间的差异,我尝试使用XIB创建自定义NSTableCellView布局。我无法让它工作。

我成功按照网站上的说明进行操作,直到进入第4步。我发现我无法控制 - 将文本和标签字段拖到BPTableCell.swift。

经过更多的研究,我在XIB文件的对象部分添加了一个对象,并将其类设置为BPTableCell。然后,我可以控制拖动控件并创建IBOutlets。但是,仍然存在一个问题 - 现在有两个警告。警告读

MainMenu.xib: warning: Unsupported Configuration: Outlet 'itemField' of 'Table Cell' is connected to 'Item Field,' an invalid destination (Object may be repeated at runtime.) 

MainMenu.xib: warning: Unsupported Configuration: Outlet 'itemLabel' of 'Table Cell' is connected to 'Item Label,' an invalid destination (Object may be repeated at runtime.) 

我GOOGLE了这些警告,但找不到任何有用的东西。

有人可以告诉我该怎么做才能摆脱这些警告?

回答

1

绑定是无效的,因为它们连接到动态复制的条目(所以你有多个对象连接到同一个变量)。这是不可能的,因此警告。但是,如果您有任何视图的自定义类,则可以从此处访问所有对象。你的确可以将子视图绑定到你的cell/view子类中的变量。

+0

感谢Mike的帮助!不幸的是我仍然不明白。 1.关于'动态复制'的问题,我知道tableview是为每一行创建多个TableCellViews,但为什么这是一个问题呢?它与StoryBoard一起工作。尊重故事板 2.关于自定义类别,我没有自定义类别吗?我认为BPTableCell是我的自定义类别,我如何存取所有对象,因为我无法将两个单元格绑定到它我得到的警告? – ClarkS

+0

嗯,我认为你将对象绑定到你的文件的所有者或类似的东西,当我得到了上述警告时,我已经这样做了,而且我可以将该字段绑定到我自己的子类(从NSTableCellView派生)我做了与图像和textField成员相同的内容。 –

+0

也许我可以更好地解释我所拥有的尝试使用本教程创建XIB项目时。 1.我创建了一个自定义类BPTableCell。它来源于NSTableCellView。 2.我已经使用Identity检查器将BPTableCell设置为表格单元格的自定义类。然后我试着控制对象。 Xcode不会让我这样做。 4.我在XIB的Objects部分添加了BPTableCell作为对象。 5.我能够控制拖动对象,但现在我得到警告。我想了解如何删除警告。 – ClarkS