Swift iOS-如何检查TabBarController中是否可以看到SelectedSegmentedIndex?

时间:2017-08-10 12:13:28

标签: ios swift visibility uisegmentedcontrol viewwillappear

我有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中的代码运行?

0 个答案:

没有答案