【发布时间】:2008-10-28 08:36:17
【问题描述】:
我认为标题几乎说明了一切......我正在寻求实现一个类似于上述所有程序中使用的标准 OS X 侧边栏的界面,我想知道是否有人对此有任何想法最简单的方法,即关于左侧选择窗格使用什么视图。真的,我认为我什至不需要苹果应用程序中看到的分层组件,我只需要一个好看的平面选项列表,它决定了右侧窗格中显示的内容。
明显的开始是垂直拆分布局视图,但除此之外我不完全确定该去哪里。只有一列或类似内容的集合视图?
【问题讨论】:
我认为标题几乎说明了一切......我正在寻求实现一个类似于上述所有程序中使用的标准 OS X 侧边栏的界面,我想知道是否有人对此有任何想法最简单的方法,即关于左侧选择窗格使用什么视图。真的,我认为我什至不需要苹果应用程序中看到的分层组件,我只需要一个好看的平面选项列表,它决定了右侧窗格中显示的内容。
明显的开始是垂直拆分布局视图,但除此之外我不完全确定该去哪里。只有一列或类似内容的集合视图?
【问题讨论】:
我已经完成了一些使用类似设置的应用程序。
我通常使用 NSSplitView,在左侧窗格中使用单列 NSTableView。不要忘记禁用标题,并使其显示为“源视图”样式。
如果你想要显示三角形,那么你会想要使用 NSOutlineView 而不是 NSTableView,但至少在第一次尝试时,我会坚持使用简单的 NSTableView。
我还使用的一种模式是使 NSTableView 比 NSSplitView 略短,并在底部有按钮(添加、删除等)。我通常围绕 Core Data 构建程序,因此很容易将这些连接到创建/删除对象的方法,然后将 NSTableView 绑定到对象数组。
【讨论】:
在 Leopard 中添加了对此类事物的直接支持。它被称为“源列表”。
请参阅AppKit release notes。在文档中搜索 NSTableViewSelectionHighlightStyleSourceList。
或者,拖出一个表格视图并在 Interface Builder 中选择 Highlight: Source List。
【讨论】: