我正在执行此功能以同时启用和禁用iCloud来保存UIDocument,但是我似乎错过了两次。尤其是当iCloud被启用时,saveToURL返回false,并且我不知道为什么这么做,因为文档不是nil并且路径是一个合理的路径。这是我的功能简介:
func newFavorite(favorite: palinaModel) ->Bool {
if indexForPalina(favorite) != nil {
print("stop already favorite")
return false;
}
// Save Stop
let baseURL = NSFileManager.defaultManager().URLForUbiquityContainerIdentifier(nil)
var favoriteURL:NSURL!
if (baseURL != nil) {
let favoritesURL = baseURL!.URLByAppendingPathComponent(pathComponent())
favoriteURL = favoritesURL.URLByAppendingPathComponent(String(format:"Stop_%@", favorite.palina))
} else {
let filePath = getFilePath()
favoriteURL=NSURL(fileURLWithPath: filePath)
}
let document = FavoriteStopDocument(fileURL:favoriteURL, favorite:favorite)
// Add Bookmark To Bookmarks
self.favoriteElements.append(document)
print("favoriteUrl=" + favoriteURL.path!+" document="+document.favoriteStop!.palina)
document.saveToURL(favoriteURL, forSaveOperation:.ForCreating, completionHandler:{(success) in
if (success) {
print("Save succeeded.");
} else {
print("Save failed.");
}
})
return true
}
感谢你的支持。
最佳答案
我什至浪费了与Apple的票证之后,最终放弃了UIDocument,并决定将字典另存为普通的NSUserDefault。
关于swift - UIDocument中的saveToURL返回false,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32957228/