我有一个TableViewController和2种到达那里的方法。 一个是来自Viewcontroller的segue(显示),它是导航控制器的根控制器,它本身也是我的Tab Bar Controller的一个选项卡。 第二,tableVC也是另一个导航控制器的根VC,它也是该选项卡栏控制器中的一个选项卡。这是一个例子:
现在我想检查viewDidLoad
是否是我的TableVC,是通过第一种方式还是通过第二种方式调用它。我如何找到答案?
答案 0 :(得分:0)
您可以在视图控制器中添加一个属性,以指示它的来源……
class MyTableViewController: UITableViewController {
enum Source {
case productList, basket
}
var source: Source!
}
然后
override func prepareForSegue(segue: UIStoryboardSegue, sender: Any?) {
if let vc = segue.destination as? MyTableViewController {
vc.source = .productList
}
}
等
答案 1 :(得分:0)
非常简单,只需在要显示的viewController上添加一个变量,假设var vcOpenedBy = ""
现在启动此ViewController时,只需使用此var并打印您喜欢的任何内容
让vc = VcController(nibName:“”,bundle:nil) vc.vcOpenedBy =“ NavigationMethod”
,在您进行查询时,您也可以使用vcOpenedBy 并使用字符串“ SqgueMethod”
现在在viewDidLoad()中的该viewController上 只需打印此vc即可。就是这样