我目前正在尝试定义一个NSToolbar
可选择的表示绘图 OSX 应用程序中的工具。 NSToolbarItems
我希望用户能够通过单击来选择和取消选择要使用的工具(NSToolbarItems)。
如果你碰巧知道 Sketch,那就是我正在寻找的工具栏行为:
在上图中,您可以看到选择了“编辑”工具。如果再次单击该项目,它将被取消选择:
我一直在阅读工具栏的 Apple 文档,但没有找到有关如何实现能够选择/取消选择工具栏项的这种效果的信息。在“可选工具栏项目”中它说:
setSelectedItemIdentifier:
您的应用程序可以使用传递所需工具栏项的标识符的方法来指定当前选定的工具栏项。当前选择的工具栏项由方法返回selectedItemIdentifier
。如果当前没有选择,则返回 nil。
但我还没有找到该setSelectedItemIdentifier:
方法的定义位置,或者它是否可以解决我的要求。
我的工具栏项目现在发生的情况是,一旦单击,它们只能通过单击另一个可选项目来取消选择。单击一个项目后,将始终有一个选定的项目。
有什么简单的方法可以解决这个问题吗?我是否遗漏了文档的重要部分,它解释了如何实现这种效果?
非常感谢!
回答:
所以最后它就像将 的 设置为selectedItemIdentifier
一样NSToolbar
简单nil
。这会导致所选元素被取消选择。