私はすぐに新しいです、私はこのメモアプリを作ろうとしています。私は最初のビューコントローラに入るビューコントローラを分割し、そのビューコントローラはテーブルビューコントローラに接続します。すべてがうまくいくのは、アプリを起動するときに、私が望むようなメモをすべて持っているが、私の最初のView Controllerに戻って、私のTable View Controllerに戻ろうとすると、すべてのメモが毎回繰り返されるそれ。私は試みることができるすべてのものを試してみました、私を助けることができる誰もがある 私MasterViewControllerがある私のセルは自分自身を複製しています
import UIKit
class MasterViewController: UITableViewController {
var detailViewController: DetailViewController? = nil
override func viewDidLoad()
{
super.viewDidLoad()
Note.loadNotes() // The problem is here, I think
noteTable = self.tableView
// Do any additional setup after loading the view, typically from a nib.
let addButton = UIBarButtonItem(barButtonSystemItem: .add, target: self, action: #selector(insertNewObject(_:)))
navigationItem.rightBarButtonItem = addButton
if let split = splitViewController
{
let controllers = split.viewControllers
detailViewController = (controllers[controllers.count-1] as! UINavigationController).topViewController as? DetailViewController
}
}
マイloadNotes機能は
class func loadNotes()
{
let defaults:UserDefaults = UserDefaults.standard
let saveData: [NSDictionary]? = defaults.object(forKey: kAllNotes) as? [NSDictionary]
if let data:[NSDictionary] = saveData
{
for i:Int in 0 ..< data.count
{
let n:Note = Note()
n.setValuesForKeys(data[i] as! [String : Any])
allNotes.append(n)
}
}
}
ありがとうございます、それは動作します。なぜ私はUserDefaultsの代わりに、coredataを使うべきだと思いますか? –