我正在执行此功能以同时启用和禁用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/

10-13 02:27