我正在构建一个 macOS 应用程序,它使用类似于Swift 3: Set Finder label color的扩展属性以编程方式为文件设置 Finder 标签。这很好用。
但是,我想创建一个标签并使其在文件系统中可用,而无需将标签添加到特定文件中。例如,当用户点击一个按钮时,我想创建一个标签,类似于Finder - Preferences - Tags,您可以通过按 + 按钮来创建一个新标签。您不必指定文件或文件夹。
我尝试使用setResourceValue API向虚拟文件夹的_kMDItemUserTags添加新标签。这将按预期创建标签。但是,虚拟文件夹现在显示在搜索此标签中,这并不好。一旦我再次从虚拟文件夹中删除标签(并且没有其他文件或文件夹具有此标签),该标签就会从可用标签列表中消失。
所以,我想知道如何在 Swift 中创建一个新标签并将其持久化而不将其分配给文件?