2014-10-31 52 views
0

無我有這樣的代碼在我的控制器:意外地發現在迅速

var itemList:[String] = [] 

@IBOutlet var tasksTable:UITableView! 

func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int{ 
    return itemList.count 
} 

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell{ 
    var cell = UITableViewCell(style: UITableViewCellStyle.Default, reuseIdentifier: "cell") 

    cell.textLabel.text = itemList[indexPath.row] 

    return cell 
} 

override func viewWillAppear(animated: Bool) { 
    tasksTable.reloadData() <----------------------- 
} 

爲什麼會出現這個錯誤?

錯誤:意外地發現爲零,而因爲此刻viewWillAppear展開一個可選值

回答

3

它被調用時,tasksTable是零。你可能忘了把插口連接到筆尖。

+0

我已經連接了插座。但是,最初陣列將是零。有沒有辦法處理無數組? – 2014-10-31 19:08:06

+0

這實際上是Swift的一個非常棒的功能。如果Objective-C發生這種情況,_nothing_將會發生;你的表格視圖不起作用,但你不知道爲什麼。這樣,斯威夫特拍拍你,因爲沒有連接插座。 – matt 2014-10-31 19:08:32

+0

哦..對不起..我忘了掛鉤..謝謝 – 2014-10-31 19:09:57