我已经写了一个应用程序在swift和部分与问题它有两个视图与他们相应的视图控制器。这部分的目的是让用户点击控制器1上的某个单元格,该单元格打开一个带有表格视图的模态视图,可以从中选择表格视图单元格。当用户点击一个时,它应该返回到控制器1并更新原始单元上的细节文本。 问题是标签不会更新。这里是代码:可以打印变量,但分配给另一个返回零(斯威夫特)
此代码是从模态视图控制器。这是获取选定单元格并更新变量的代码。
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
var find = totalProducts[productSectionTitles[indexPath.section]]!
selectedCell = find[indexPath.row]
let rootController = TableViewController()
println("\(selectedCell) from productController from selectedCell variable")
rootController.updateText(selectedCell)
self.dismissViewControllerAnimated(true, completion: nil)
cell.accessoryType = UITableViewCellAccessoryType.Checkmark
}
此代码来自控制器1,其中模态视图从其中启动。这是从模态视图控制器调用来更新文本。
func updateText(transferVar: String) {
println("\(transferVar) from rootController from transfer parameter")
detailsLabel?.text = transferVar
println(detailsLabel?.text)
}
因此该参数的数据完全模态视图控制器之间传送至rootController并且因为它打印出正确的绝对保持的值。但只要我尝试分配它返回零,我发现它应该已分配后,通过println()detailText。这是您点击单元格时控制台打印的内容。
Wood4 from productController from selectedCell variable
Wood4 from rootController from transfer parameter
nil
我不知道如何获得打印出transferVar的标签。我应该添加标签连接到视图。我该如何解决?
在此先感谢。希望你能理解。 :]
我仍然收到同样的错误?感谢您的快速回答,尽管@connor – Tomblasta 2014-10-16 10:55:13
对不起,我错过了一部分代码。它现在已经修复了 – connor 2014-10-16 10:59:58
它仍然没有工作:/我已经复制了你的新代码,但它仍然返回零? – Tomblasta 2014-10-16 11:06:47