0

我需要从右键单击上下文菜单中删除一些项目,但工具栏不包含访问“toolbarView”的公共 API。

是否可以在不使用私有 API 的情况下自定义菜单?

4

1 回答 1

1

您可以在创建工具栏时访问和修改工具栏上下文菜单,即-[awakeFromNib]

- (NSMenu *)toolbarMenuInWindow:(NSWindow *)window
{
    NSView *contentView = window.contentView;
    NSView *toolbarView = contentView.superview.subviews.lastObject;
    NSMenu *toolbarMenu = toolbarView.menu;
    return toolbarMenu;
}

现在您可以直接编辑菜单项并隐藏或禁用它们。

于 2012-05-06T20:57:56.810 回答