我有一个UITableView
原型单元格,基本上占用了整个页面。我在底部有一个UIButton
,在点按时会显示弹出式静态UITableView
。我正在努力解决cellForRowAtIndexPath
中弹出表格的问题。
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let result: UITableViewCell
if tableView == self.tableView {
var cell = self.tableView.dequeueReusableCellWithIdentifier("Cell", forIndexPath: indexPath) as! UITableViewCell
cell.textLabel!.text = array[indexPath.row]
result = cell
} else if tableView == self.popUpTableView {
var popUpCell = self.popUpTableView.dequeueReusableCellWithIdentifier("popUpCell", forIndexPath: indexPath) as! UITableViewCell
popUpCell.textLabel!.text = popUpArray[indexPath.row]
result = popUpCell
}
return result
}
我在return result
收到错误,其中Variable 'result' used before being initialized
,但我在最顶层声明错误。我在哪里错了?
答案 0 :(得分:0)
你需要有详尽的选择。结果永远不会被初始化,因为您的检查是“if”和“else if”。如果tableView不是“self.tableView”或“self.popUpTableView”会发生什么?
简单的解决方法是(如果您只计划使用这两个),只需将“else if”更改为简单的“else”即可。这样结果将始终初始化。