2017-06-11 10 views
0

私のNSCodingコードを動作させ、カスタムオブジェクトの配列を保存しようとしているので、 'path'は未解決です。私はそれを文字列 "パス"として使用しようとしましたが、メソッドはそれを文字列として受け取らないことになっています。私は間違って何をしていますか?Swift NSKeyedArchiver toFile:未解決の識別子

エラー:

Use of unresolved identifier 'path'

// After Updating Table, Save Arrays 
var success = false 

success = NSKeyedArchiver.archiveRootObject(mainArray, toFile: path) 

if success { 
    print("Saved Blogs") 
} else { 
    print("Didn't Save Blogs") 
} 

のviewDidLoad

override func viewDidLoad() { 
    super.viewDidLoad() 

    // NSCoding 
    var path : String { 
     let manager = FileManager.default 
     let url = manager.urls(for: .documentDirectory, in: .userDomainMask).first! as NSURL 
     return url.appendingPathComponent("blogs.plist")!.path 
    } 
} 
+1

パス変数はどこで定義しましたか? –

+0

ViewDidLoadでは、それを外に置くことになっていますか? – BroSimple

+0

私はあなたがViewDidLoadの外に置くはずの馬鹿げた間違いに感謝しています。それを答えとして追加し、私はあなたに正解を与えます – BroSimple

答えて

1

あなたがメソッドを呼び出しているとあなたは同じスコープ内であなたの変数を定義していることを確認します。

関連する問題