我的应用程序包含NSTabView
两个选项卡。此外,应用程序本身具有playState
一个枚举。playState
保存在Singleton中。
typedef enum {
kMyAppPlayStatePlaying,
kMyAppPlayStatePaused
} MyAppPlayState;
在playState
这里合成。
@property (readwrite) MyAppPlayState playState;
我想在NSTabView
每次playState
更改时切换。因此,我准备了一个IBOutlet
添加类似于此的绑定。
[self.playPauseTabView bind:@"selectedItemIdentifier" toObject:[MyAppState sharedState] withKeyPath:@"playState" options:nil];
我已经认识到identifier
必须NSString
。这与我的枚举不匹配,它是一个int
. 我也许可以使用 anNSValueTransformer
来解决这个问题。
此外,selectedItemIdentifier
不存在。NSTabView
仅提供selectedTabViewItem
然后允许访问identifier
或label
. 虽然,我找不到基于标识符切换项目本身的方法。