我有一个plist文件,其中包含我需要在组织为词典字典的应用程序中显示的信息。我刚刚开始编程Cocoa,所以我不确定最好的方法。显然我可以手动完成所有操作,并编写循环并将数据添加到UI元素,但在我看来,绑定和提供的控制器应该让我更容易做到这一点。
我特别想知道是否有直接方式(例如主要使用Interface Builder)来链接我从阅读plist文件获得的NSDictionary
,其本身包含更多NSDictionary
个元素,包含名称 - 值字符串对,到适当的用户界面元素 - 可能是大纲视图或浏览器。
或者,数据将适合功能浏览器类型面板(如在Excel中),其中顶级键是功能类别,下一级是该类别中的功能,我可以填充最低级别的文本区域级别详细信息 - 即最终字典中的值数据。
答案 0 :(得分:0)
我认为您无法使用NSBrowser或NSOutlineView执行此操作。我之所以这样说,是因为如果你使用这些视图的绑定,你需要使用NSTreeController。 NSTreeController提供了指定模型中哪些键指示当前对象是否具有子对象(isLeaf)以及如何访问子对象(子对象)的功能。
因此,如果您要使用这两个视图中的一个,则必须能够为模型添加其他键和属性才能执行此操作。很多时候,当我使用NSOutlineView和NSBrowser时,我发现最简单地跳过绑定并只使用all delegate&数据源方法。它们需要更多的代码,但它们并不难拼凑起来,如果我的数据模型很复杂,或者数据的格式不是通过NSTreeController轻松抽取,有时我更喜欢它们。
但是,您可以通过执行以下操作来使用NSTableView。