2015-07-11 67 views
0

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

目前,我有以下代码:

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的?这是正确的方法吗?

回答

2
  • 如果你想显示一个有效的网址,只需设置NSPathControl实例的URL财产与NSURL对象
  • 如果你想显示相对路径或无效的网址,看看苹果的示例代码NSPathControl Basics