我有tabBarController
个标签。在第二个标签上,我有一个segmentedControl
,包含2个细分。在两个段的viewWillAppear
中,我都有运行的代码。我注意到每当我按下第二个选项卡时,两个段的代码都会运行。即使我在第二段,切换回第一个标签,然后切换回第二个标签(这意味着它仍然显示第二个段,第一个段不可见),第一个段的代码仍然运行。
问题似乎是当我按下标签时两个段的viewWillAppear
都运行。
class FirstSegment: UIViewController{
viewWillAppear...{
//do something
}
}
class SecondSegment: UIViewController{
viewWillAppear...{
//do something
}
}
我在两个片段上尝试了以下代码,但它不起作用,因为如果我按下第二个标签,它们都会运行:
viewWillAppear...{
//I tried a combination of these
if self.isViewLoaded && (self.view.window != nil) {
// run code in viewWillAppear
}
}
如何确保只有可见选定细分的viewWillAppear
中的代码运行?