我有一个应用程序可以在多个版本的 OS X 上NSToolbarItem
使用。在某些 OS 版本中使用户只能使用的最佳方法是什么?当它不可用时,它应该完全隐藏,而不仅仅是禁用。
为简化起见,如何以编程方式从此(下方)菜单中删除工具栏项?
编辑:我试图toolbarAllowedItemIdentifiers:
像这样覆盖委托:
- (NSArray *)toolbarAllowedItemIdentifiers:(NSToolbar *)toolbar {
NSLog(@"Toolbar requesting allowed items.");
NSMutableArray *array = [NSMutableArray array];
[array addObject:@"TPUpToolbarItem"];
[array addObject:@"TPDownToolbarItem"];
[array addObject:@"TPResetToolbarItem"];
[array addObject:@"TPSpeedToolbarItem"];
[array addObject:@"TPGroupToolbarItem"];
[array addObject:@"TPBackgroundToolbarItem"];
[array addObject:NSToolbarShowFontsItemIdentifier];
if (floor(NSAppKitVersionNumber) <= 1038) {
NSLog(@"Below Lion, adding Fullscreen item.");
[array addObject:@"TPFSToolbarItem"];
}
[array addObject:@"TPFlipHToolbarItem"];
[array addObject:@"TPFlipVToolbarItem"];
[array addObject:NSToolbarFlexibleSpaceItemIdentifier];
[array addObject:NSToolbarSpaceItemIdentifier];
[array addObject:NSToolbarSeparatorItemIdentifier];
[array addObject:NSToolbarShowColorsItemIdentifier];
[array addObject:NSToolbarPrintItemIdentifier];
return array;
}
所有其他工具栏项目都以正确的顺序显示,但全屏项目在最后,并且仍然存在。
提前致谢。