Ios prepareforsegue vs performwithsegue if语句。
假设我有一个表视图,我将如何创建代码,让一个单元格转到一个视图控制器,然后让另一个单元格转到第二个视图控制器。特别是准备segue并使用segue if语句执行。您的父视图控制器(表视图所在的位置)应该具有UITableViewDelegate方法 您需要创建自己的以下实现: 在那里(当一个单元格被按下时会被调用),你会想要调用它 传递到didSelectRowAtIndexPath的参数之一是索引路径行,因此您可以知道用户按下了哪一行。您可以在performsguewithidentifier方法的“Ios prepareforsegue vs performwithsegue if语句。,ios,swift,Ios,Swift,假设我有一个表视图,我将如何创建代码,让一个单元格转到一个视图控制器,然后让另一个单元格转到第二个视图控制器。特别是准备segue并使用segue if语句执行。您的父视图控制器(表视图所在的位置)应该具有UITableViewDelegate方法 您需要创建自己的以下实现: 在那里(当一个单元格被按下时会被调用),你会想要调用它 传递到didSelectRowAtIndexPath的参数之一是索引路径行,因此您可以知道用户按下了哪一行。您可以在performsguewithidentifi
sender
”参数中传递该单元格(或信息,或单元格从中绘制其内容的对象)
您可以从方法中的父视图直接访问子视图控制器。因此,您可以执行以下操作:
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
if (segue.identifier == "Load View") {
// pass data to next view
let cellData = sender as YourDataObject
let childViewController = segue.destinationViewController as YourChildViewController
// and now you can directly set whatever custom fields / bits
// you need to set in your destination view controller
}
}
到目前为止有意义吗?请向我们展示您的尝试。我之所以这么问,主要是因为我不确定如何开始。可选功能的用途是什么?我不能直接在表视图控制器中实现代码吗?我理解prepare for segue的if语句,但是如何使用perform with segue实现它呢?表视图控制器是常规视图控制器的子类。当调用“
performWithSegue
”时,prepareForSegue
是您直接将信息从您的传递到segue的机会,因此如果我不需要将任何信息传递到以下视图控制器,我是否需要使用prepareForSegue功能?@JonGardocki,no,如果不需要将任何数据传递给目标视图控制器,则不需要实现prepareForSegue。