Xcode 我的代码(云工具包)有什么问题

Xcode 我的代码(云工具包)有什么问题,xcode,swift,Xcode,Swift,这是我的代码,允许一个警报和写入警报中的文本保存在云中。我实际上是在学习一个教程 我在我的一些代码上收到了两条错误消息 错误:任何对象与CKRecords不相同(位于self.post=post) 错误:CKRecords没有名为subscript的成员(位于newPost[“content”] 我写的代码和那个家伙在教程中写的一模一样,只是我有错误信息,而他没有!我如何修复这些错误 var posts = [CKRecord]() override func viewDidLoa

这是我的代码,允许一个警报和写入警报中的文本保存在云中。我实际上是在学习一个教程 我在我的一些代码上收到了两条错误消息

  • 错误:任何对象与CKRecords不相同(位于self.post=post)
  • 错误:CKRecords没有名为subscript的成员(位于newPost[“content”]
  • 我写的代码和那个家伙在教程中写的一模一样,只是我有错误信息,而他没有!我如何修复这些错误

        var posts = [CKRecord]()
    
    
    
    override func viewDidLoad() {
        super.viewDidLoad()
    
    
    }
    
    func loadData() {
        posts = [CKRecord]()
    
        let publicData = CKContainer.defaultContainer().publicCloudDatabase
        let query = CKQuery(recordType: "Post", predicate: NSPredicate(format: "TRUEPREDICATE", argumentArray: nil))
        publicData.performQuery(query, inZoneWithID: nil) { (CKRecord, NSError) -> Void in
            if let posts = CKRecord{
                self.posts = posts //Error "Any Object is not Identical to CKRecords"
                dispatch_async(dispatch_get_main_queue(), { () -> Void in
                    self.tableView.reloadData()
                })
            }
    
        }
    }
    
    @IBAction func createPost(sender: AnyObject) {
    
        let alert = UIAlertController(title: "New Post", message: "Enter New Post", preferredStyle: .Alert)
        alert.addTextFieldWithConfigurationHandler { (textField:UITextField!) -> Void in
            textField.placeholder = "Your Post"
        }
        alert.addAction(UIAlertAction(title: "Post", style: UIAlertActionStyle.Default, handler: { (action: UIAlertAction!) -> Void in
            let textField: AnyObject = alert.textFields!.first!
    
            if textField.textLabel??.text != "" {
                let newPost = CKRecord(recordType: "Post")
                newPost["content"] = textField.textLabel??.text //ERROR "CKRecord does not have a member named subscript"
    
    
    
                let publicData = CKContainer.defaultContainer().publicCloudDatabase
                publicData.saveRecord(newPost, completionHandler: { (record: CKRecord?, error: NSError?) -> Void in
                    if error == nil {
                        print("Post Saved")
                    }
                })
    
            }
    
    
    
    
    
    
        }))
    
        alert.addAction(UIAlertAction(title: "Cancel", style: .Cancel, handler: nil))
        self.presentViewController(alert, animated: true, completion: nil)
    

    将Xcode更新至最新版本

    这种语法可以从特定版本的Swift开始使用。我不记得您确切需要哪个版本,但如果您只更新Xcode,您的问题将消失