使用NSPathControl表示虚拟路径

时间:2020-04-08 08:09:57

标签: swift xcode macos nspathcontrol

使用NSPathControl表示本地计算机上的路径很好!

当我尝试表示远程服务器的虚拟路径时,问题出现了;在这种情况下,我必须相应地更改图标。

图片代表我获得的不是我想要的。

Standard path vs. custom path

现在的问题是:如何更改NSPathControl的每个元素的图标?苹果的文档非常模糊。

唯一类似的帖子是Customise NSPathControl,但看起来已经过时了。

1 个答案:

答案 0 :(得分:1)

Masybe并不是最好的,但是正在工作。

class ViewController: NSViewController {
@IBOutlet weak var customPath: NSPathControl!

override func viewDidLoad() {
    super.viewDidLoad()

    customPath.pathItems = [
        self.pathItem(title: "root", imageName: "root"),
        self.pathItem(title: "First folder", imageName: NSImage.folderName),
        self.pathItem(title: "Second folder", imageName: NSImage.folderName)
    ]
}

func pathItem(title: String, imageName: String) -> NSPathControlItem {
    let item = NSPathControlItem()
    item.title = title
    item.image = NSImage(named: imageName)
    return item
}
}

The result