0

我的设置屏幕中有几个 NSPathControls。我希望能够从 NSUserDefaults 中检索存储的设置,并使用存储的 URL 初始化 NSPathControl 的 NSPathComponentCell。

目前我有以下代码:

class SettingsViewController: NSViewController {

    let userDefaults = NSUserDefaults.standardUserDefaults()

    var designFolderPath:String = String()
    var developmentFolderPath:String = String()

    @IBOutlet weak var designFolder: NSPathControl!
    @IBOutlet weak var developmentFolder: NSPathControl!

    @IBAction func saveUserSettings(sender: AnyObject) {
        saveUserSettings()
    }

    func saveUserSettings() {
        designFolderPath = designFolder.URL!.absoluteString
        developmentFolderPath = developmentFolder.URL!.absoluteString


        userDefaults.setObject(designFolderPath, forKey: "designFolder")
        userDefaults.setObject(developmentFolderPath, forKey: "developmentFolder")

        dismissController(self)

    }


    override func viewDidLoad() {
        super.viewDidLoad()
        // Do view setup here.

//        let designFolderURL:NSURL = NSURL(fileURLWithPath: designFolderPath, isDirectory: true)
//        designFolder.setPathComponentCells(NSPathComponentCell.URL(designFolderURL, resourceDataDidBecomeAvailable: <#T##NSData#>))

    }

    override func viewDidDisappear() {

    }

}

在 viewDidLoad() 方法中注释掉的行中,我尝试使用 URL 初始化 NSPathComponentCell,但是我不确定要作为 NSData 传递什么?这是正确的方法吗?

4

1 回答 1

2
  • 如果要显示有效的 URL,只需使用对象设置实例的URL属性NSPathControlNSURL
  • 如果要显示相对路径或其他无效 URL,请查看 Apple 示例代码NSPathControl Basics
于 2015-07-11T18:18:58.643 回答