gpt4 book ai didi

ios - 如何重新初始化 TableView 覆盖功能?

转载 作者:行者123 更新时间:2023-11-30 13:42:19 24 4
gpt4 key购买 nike

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {

let storyboard = UIStoryboard(name: "FilteringPageSelection", bundle: nil)
controller = storyboard.instantiateViewControllerWithIdentifier("FilteringPageSelectionController") as! FilteringPageSelectionTableViewController
controller.filteringType = filterTitle[indexPath.row];
controller.selectedValue = selectedValue;

controller.title = "Selection"
self.navigationController?.pushViewController(controller, animated: true)

tableView.deselectRowAtIndexPath(indexPath, animated: true)
}

上面是我的代码,这是我的 TableView Controller 代码,我打算通过单击它的单元格来推送到另一个 View Controller 。在新的 Controller 中,有多个值供我选择。但是,在我从新 Controller 中选择新值后,我回到原始 TableView 场景并从新 Controller 中获取所选值并将其分配给变量 selectedValue。下面是我的展开转场代码。

 @IBAction func unwindToFilteringVC(segue:UIStoryboardSegue) {
selectedValue = controller.selectedValue
}

但是,当我再次单击该单元格时,由于 tableview 覆盖函数仅在 tableview 加载时第一次初始化,因此当我更改 selectedValue 的值时,controller.selectedValue 仍然保留旧值并推送进入新的 Controller 。

如何更改controller.selectedValue的值?

最佳答案

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) - 每次点击单元格时都会调用此函数,而不仅仅是一次。因此,每当您选择一个单元格时,您的代码都会实例化过滤器 View Controller ,并将其 selectedValue 设置为 TableView Controller 的当前 selectedValue(除非它是全局变量)。也许这不是你想要的。

或者

您可能混淆了哪个 selectedValue 是哪个。您应该重命名一个。

关于ios - 如何重新初始化 TableView 覆盖功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35415428/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com