将选定的行标题传回主 table 视图控制器
Pass selected row title back to main table view controller
我有一个主 table 视图控制器,其中包含带有标题和详细信息标签的静态单元格。当用户单击 "cell 1" 时,他们将被带到第二个 table 带有静态单元格的视图控制器。他们从列表中选择(只能选择一个单元格),然后当他们点击后退按钮时,他们选择的任何单元格标题都会转移到他们点击的单元格的详细信息标签中。主视图控制器有每个细节标签的出口。我搞砸了两天,似乎无法正常工作
将类型为 DismissDelegate 的委托 属性 添加到您的第二个视图控制器并将其设置为第一个控制器。
添加此协议
protocol DismissDelegate {
func selectedCell(index : int)
}
当第二个视图被关闭时,例如在 viewWillDisapper 方法中,调用 selectedCell 方法并将其传递给 selectedCell
delegate.selectedCell(self.tableView.indexOfSelectedCell) //i don't know the correct function
然后在主视图控制器中遵守协议并对索引做任何你需要做的事情
func selectedCell(index : int) {
//whatever you need to do with the index
}
有几种方法可以解决这个问题。
使用委托
您只需实现一个委托并从辅助视图控制器取回数据。
在辅助视图控制器中,您可以像这样调用委托。
self.delegate.dataInputed(xxx)
并且将调用第一个视图控制器的 dataInputed 方法。
在dataInputed方法中,可以为选中的indexPath更新数据源的值,重新加载Data
发送通知
你只需要保留选中的table cell indexPath,在收到二级细节视图控制器的通知后,你可以为选中的indexPath更新数据源的值,并重新加载table.
我有一个主 table 视图控制器,其中包含带有标题和详细信息标签的静态单元格。当用户单击 "cell 1" 时,他们将被带到第二个 table 带有静态单元格的视图控制器。他们从列表中选择(只能选择一个单元格),然后当他们点击后退按钮时,他们选择的任何单元格标题都会转移到他们点击的单元格的详细信息标签中。主视图控制器有每个细节标签的出口。我搞砸了两天,似乎无法正常工作
将类型为 DismissDelegate 的委托 属性 添加到您的第二个视图控制器并将其设置为第一个控制器。 添加此协议
protocol DismissDelegate {
func selectedCell(index : int)
}
当第二个视图被关闭时,例如在 viewWillDisapper 方法中,调用 selectedCell 方法并将其传递给 selectedCell
delegate.selectedCell(self.tableView.indexOfSelectedCell) //i don't know the correct function
然后在主视图控制器中遵守协议并对索引做任何你需要做的事情
func selectedCell(index : int) {
//whatever you need to do with the index
}
有几种方法可以解决这个问题。
使用委托
您只需实现一个委托并从辅助视图控制器取回数据。 在辅助视图控制器中,您可以像这样调用委托。
self.delegate.dataInputed(xxx)
并且将调用第一个视图控制器的 dataInputed 方法。 在dataInputed方法中,可以为选中的indexPath更新数据源的值,重新加载Data
发送通知
你只需要保留选中的table cell indexPath,在收到二级细节视图控制器的通知后,你可以为选中的indexPath更新数据源的值,并重新加载table.