如何将 NSArrayController 绑定到另一个具有 NSSet 的 NSArrayController
How to bind NSArrayController to another NSArrayController were it has NSSet
我正在开发 OS X 应用程序,其中我有一个像这样的核心数据模型:
电影<--->>剧院
我已将 NSArrayController 绑定到 NSPopUpButton 中的电影实体,当我进行选择时,我应该会看到正在播放电影的剧院列表。
在我的电影里classheader:
@property (nonatomic, retain) NSSet *theaters;
和我的剧院class:
@property (nonatomic, retain) NSString * theaterName;
我尝试将绑定设置为 "Content Set",但是当我在 NSPopUpButton(电影)中切换选择时,仅加载初始集并且不更改内容。
大家知道为什么总是显示与第一个选择相关的内容吗?
以下对我有用:
首先NSArrayController
:设置其实体为Movie
。将其绑定到 NSManagedObjectContext
.
第二个NSArrayController
:将其实体设置为Theatre
。将其绑定到 NSManagedObjectContext
,并将其 Content Set
绑定到 moviesArrayController.selection.theatres
。
然后我有两个弹出窗口:
第一个的内容绑定到 moviesArrayController.arrangedObjects
。它的 selectedIndex
也绑定到 moviesArrayController.selectionIndex
。
第二个弹出窗口只是绑定了影院 controller.arrangedObjects.
我正在开发 OS X 应用程序,其中我有一个像这样的核心数据模型:
电影<--->>剧院
我已将 NSArrayController 绑定到 NSPopUpButton 中的电影实体,当我进行选择时,我应该会看到正在播放电影的剧院列表。
在我的电影里classheader:
@property (nonatomic, retain) NSSet *theaters;
和我的剧院class:
@property (nonatomic, retain) NSString * theaterName;
我尝试将绑定设置为 "Content Set",但是当我在 NSPopUpButton(电影)中切换选择时,仅加载初始集并且不更改内容。
大家知道为什么总是显示与第一个选择相关的内容吗?
以下对我有用:
首先NSArrayController
:设置其实体为Movie
。将其绑定到 NSManagedObjectContext
.
第二个NSArrayController
:将其实体设置为Theatre
。将其绑定到 NSManagedObjectContext
,并将其 Content Set
绑定到 moviesArrayController.selection.theatres
。
然后我有两个弹出窗口:
第一个的内容绑定到 moviesArrayController.arrangedObjects
。它的 selectedIndex
也绑定到 moviesArrayController.selectionIndex
。
第二个弹出窗口只是绑定了影院 controller.arrangedObjects.