0
操作を使用してデータをplistファイルに保存しようとしています。 私は非同期保存を実装したいので、start()
をオーバーライドしました。しかし、より節約したチェックをしようとすると、isFinished
はfalseのままです。私は操作isFinished常にfalse
class OperationDataManager: Operation {
var user: AppUser?
override func start() {
if let plist = Plist(name: "userFile") {
if let dict = plist.getMutablePlistFile() {
dict["userName"] = user?.userName
dict["userInfo"] = user?.userDescription
dict["userColor"] = NSKeyedArchiver.archivedData(withRootObject: user?.userColor)
dict["userImage"] = UIImagePNGRepresentation((user?.userImage)!)
do {
try plist.addValuesToPlistFile(dictionary: dict)
} catch {
print(error)
}
}
}
if isFinished == true {
print("Operation: finished")
} else {
print("Operation: not finished")
}
}
}
何が問題になっていますが、計画通り しかしデータは、正常に保存されていますか?
ありがとうございました。しかし、具体的なケースがあります。何か問題が生じた場合にエラーアラートを表示したい。私はisFinishedフラッグがそれに十分にいいと思った。あなたはその場合に何をアドバイスできますか? – dand1
どこが間違っていましたか? – rmaddy