在 Cloudkit 中创建 CKRecord?
Posted
技术标签:
【中文标题】在 Cloudkit 中创建 CKRecord?【英文标题】:Creating a CKRecord in Cloudkit? 【发布时间】:2015-09-01 18:43:51 【问题描述】:我对 CloudKit 非常陌生,正在尝试为我的公共数据库记录类型“UserProfile”创建一条记录。
我认为我在最后一行代码中的语法不正确,因为我收到错误“无法使用类型为 (CKRecord, (CKRecord!, NSError) -> Void) 的参数列表调用 'saveRecord' '
我是否因为我不知道的 Swift 更新而收到错误,感谢任何帮助!
var nameRecord = CKRecord(recordType: "UserProfile")
nameRecord.setValue("Jimmy", forKey: "Name")
CKContainer.defaultContainer().publicCloudDatabase.saveRecord(nameRecord) (savedRecord: CKRecord!, error: NSError) -> Void in
【问题讨论】:
【参考方案1】:错误是因为您传入了 (CKRecord!,NSError)
类型的闭包,您应该传入其中一种类型(CKRecord!,NSError!)
,或者使用显式选项而不是隐式展开的选项。
试试:
var nameRecord = CKRecord(recordType: "UserProfile")
nameRecord.setValue("Jimmy", forKey: "Name")
CKContainer.defaultContainer().publicCloudDatabase.saveRecord(nameRecord) (savedRecord: CKRecord?, error: NSError?) -> Void in
【讨论】:
啊,我昨晚为此工作了几个小时,甚至没有看到这个答案。感谢藻类为我节省了这么多时间!以上是关于在 Cloudkit 中创建 CKRecord?的主要内容,如果未能解决你的问题,请参考以下文章
在 Cloudkit 中更改 CKRecord 的 CKRecordID 是不是合法?
为啥我无法访问 CloudKit 中 CKRecord 的 createdAt 字段?