0
展開一個可選值我不斷收到以下錯誤:致命錯誤:意外發現零,而使用cloudkit
fatal error: unexpectedly found nil while unwrapping an Optional value
,我想我只是不明白爲什麼。有人能幫我找到我的錯誤嗎?它是可變的結果是可選的嗎?
錯誤一直指向viewDidLoad()
中的一行,我評論說在哪裏。謝謝。
//
// ViewController.swift
// Physics Help!
//
// Created by Sam Hanson on 2/8/15.
// Copyright (c) 2015 Sam Hanson. All rights reserved.
//
import UIKit
import CloudKit
class ViewController: UIViewController {
//VARIABLES********************************************************
@IBOutlet var c1Answer: UILabel!
@IBOutlet var questions: UILabel!
var resultsOfDB : String = ""
var indexes : [Int] = []
var counter : Int = 0
var newStr : String = ""
//*****************************************************************
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
self.questions.text = String(getNewQbutton()) //error points to here*********
}
//load the answers, grab them from the cloud base
@IBAction func loadAnswers() {
let container = CKContainer.defaultContainer()
var publicDB = container.publicCloudDatabase
let myQuery = CKQuery(recordType: "QuestionsTable", predicate: NSPredicate(value: true))
publicDB.performQuery(myQuery, inZoneWithID: nil){
results, error in
if error != nil {
println(error)
}
else
{
dispatch_async(dispatch_get_main_queue(), {() -> Void in
self.c1Answer.text = results.description
println(results.description)
})
}
}
}
@IBAction func getNewQbutton() {
let container = CKContainer.defaultContainer()
var publicDB = container.publicCloudDatabase
let myQuery = CKQuery(recordType: "QuestionsTable", predicate: NSPredicate(value: true))
publicDB.performQuery(myQuery, inZoneWithID: nil){
results, error in
if error != nil {
println(error)
}
else
{
dispatch_async(dispatch_get_main_queue(), {() -> Void in
self.resultsOfDB = results.description
//for each character in resultsOfDB
for character in self.resultsOfDB{
if(character == "\""){
self.indexes.append(self.counter)
}
self.counter++
}
self.newStr = self.resultsOfDB.substringWithRange(Range<String.Index>(start: advance(self.resultsOfDB.startIndex, self.indexes[0] + 1), end: advance(self.resultsOfDB.endIndex, -(self.counter - self.indexes[1]))))
self.questions.text = self.newStr
})
}
self.counter = 0
}
}
我檢查了問題的連接,它只連接到一個UILabel。難道這可能是某種方式,這個函數會把一個無價值的東西放到questions.text裏面導致錯誤? – CS8800 2015-02-23 19:52:59
請看我的udpate – 2015-02-23 20:04:06
謝謝,我想我明白了!謝謝youuuu! – CS8800 2015-02-23 20:07:24