我想突出显示选定的内容NSToolbarItem
,例如在 Adium 中(见屏幕截图)。
突出显示 http://a2.s3.p.quickshareit.com/files/screenshot_b28b67ba9411513d6.png
有没有简单的方法?如果没有,请告诉我困难的那个。=)
我想突出显示选定的内容NSToolbarItem
,例如在 Adium 中(见屏幕截图)。
突出显示 http://a2.s3.p.quickshareit.com/files/screenshot_b28b67ba9411513d6.png
有没有简单的方法?如果没有,请告诉我困难的那个。=)
要扩展 Chuck 的答案,您只需将控制器设为 NSToolBar 的委托并在其中实现 toolbarSelectableItemIdentifiers: 委托方法。例如,以下实现将让您在每个工具栏项上保留选择突出显示,但标记为“检查”的项除外:
- (NSArray *)toolbarSelectableItemIdentifiers:(NSToolbar *)toolbar
{
NSMutableArray *allIdentifiers = [[NSMutableArray alloc] init];
for (NSToolbarItem *toolbarItem in [toolbar items])
{
if (![[toolbarItem label] isEqualToString:@"Inspect"])
[allIdentifiers addObject:[toolbarItem itemIdentifier]];
}
return [allIdentifiers autorelease];
}
当我做这样的事情时,我将 allIdentifiers 数组缓存在一个实例变量中,这样我只需要做一次数组构造。
如果您在 Interface Builder 中制作了工具栏,则可以单击各个 NSToolbarItems 并检查 Inspector 中的 Selectable 框以获取您想要的外观。无需代码。
请参阅Cocoa 文档中的可选工具栏项。