Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios Xcode:使用Firebase时出现持续分段错误:11_Ios_Swift_Xcode_Firebase_Firebase Realtime Database - Fatal编程技术网

Ios Xcode:使用Firebase时出现持续分段错误:11

Ios Xcode:使用Firebase时出现持续分段错误:11,ios,swift,xcode,firebase,firebase-realtime-database,Ios,Swift,Xcode,Firebase,Firebase Realtime Database,我对你很生气 由于信号:分段故障:11,命令失败 当我在项目中使用Firebase时 我在这里读到了很多关于这个Xcode错误的问题,但在使用Firebase时它会被发送出去 我尝试了许多解决方案,如清理项目、重建、禁用位代码、删除派生数据等 我的代码: @IBAction func saveBook(sender: UIBarButtonItem) { var arrayOfNames : [String] = [String]() for i in 0 ..<

我对你很生气

由于信号:分段故障:11,命令失败

当我在项目中使用Firebase时

我在这里读到了很多关于这个Xcode错误的问题,但在使用Firebase时它会被发送出去

我尝试了许多解决方案,如清理项目、重建、禁用位代码、删除派生数据等

我的代码:

   @IBAction func saveBook(sender: UIBarButtonItem) {


    var arrayOfNames : [String] = [String]()
    for i in 0 ..< 6 {
        let indexPath = NSIndexPath(forRow:i, inSection:0)
        let cell : LongNameTableViewCell? = self.tableView.cellForRowAtIndexPath(indexPath) as! LongNameTableViewCell?
        if let item = cell?.textField.text {
            arrayOfNames.append(item)
        }
    }

   self.ref.child("books").childByAutoId().setValue(["title": arrayOfNames[0], "author": arrayOfNames[1], "pages_count":arrayOfNames[2]])
   self.dismissViewControllerAnimated(true, completion: nil)

}
@iAction func存储本(发件人:UIBarButtonItem){
变量arrayOfNames:[String]=[String]()
对于0..<6中的i{
设indexPath=NSIndexPath(forRow:i,第0节)
让单元格:LongNameTableViewCell?=self.tableView.CellForRowatineXpath(indexPath)作为!LongNameTableViewCell?
如果let item=cell?.textField.text{
arrayOfNames.append(项目)
}
}
self.ref.child(“books”).childByAutoId().setValue([“title”:arrayOfNames[0],“author”:arrayOfNames[1],“pages_count”:arrayOfNames[2])
self.dismissViewControllerAnimated(真,完成:无)
}

正如类似问题中通常提到的,当Xcode由于某种原因无法解析代码等式时,就会出现此问题。变量类型不明确

虽然这是一个推荐的解决方案,但它对我很有效:

self.ref.child("books").childByAutoId().setValue(["title":arrayOfNames[0] as! String, "author": arrayOfNames[1] as! String, "pages_count":arrayOfNames[2] as String!])
很明显,现在Xcode显示警告,这种类型的转换没有意义,但幸运的是,这清除了错误消息

编辑


Xcode 8删除了所有这些问题。

我解决这个问题的方法是反向工作并注释出可能导致问题的逻辑。应该在错误的正下方指定了一个类文件。我的问题是我有一个使用这种方法的超级类:

func queryAssetsFromDB() -> [AssetDTO]? {
    return nil
}
而我却用

override func queryAssetsFromDB() -> [AssetDTO] {
    let cryptos = assetManager.findAllCrypto()
    return cryptos
}

请注意,在podfile中的响应数组中有一个可选选项,您可以尝试使用\u框架取消注释

use_frameworks!
pod 'Firebase'
pod 'Firebase/Database'
pod 'Firebase/Auth'
然后在终端中运行“pod更新”。重新启动Xcode项目


在与分段错误11斗争了两天之后,我终于做到了这一点。与我的情况相比,这很奇怪,因为我需要做的唯一解决方案是清理我的项目文件夹,以避免失败。我总是使用框架。对我来说,将xcode更新为8解决了这个问题