繁体   English   中英

如何防止Storyboard Segue重置UIPopoverController中的UIViewController

[英]How to prevent Storyboard Segue from resetting UIViewController inside UIPopoverController

这是我的问题。 使用Storyboard的segue,我有一个用于按钮的popover segue。 UIPopoverController中的UIViewController需要从服务器加载数据。 使用Storyboard,每次关闭弹出窗口时,视图都会被释放,因此每当弹出窗口再次出现时,它会尝试再次从服务器加载数据。 我不想要这种行为。 如何防止Storyboard重置弹出控制器内的视图控制器? 像UITabBarController那样的东西。 UITabBarController第一次调用viewDidLoad,并且后续的选项卡切换调用viewWillAppear。

Segue就是这样设计的。 每次你做segue - 视图都会被加载。 如果您需要存储它的数据 - 您应该将它存储在popover之外并使用此方法

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
    if ([[segue identifier] isEqualToString:@"your segue identifier"])
    {
        //get popover
        ViewController *vc = [segue destinationViewController];

        //Set popover data to vc here
    }

在segue之前调用,并在此方法中将数据设置为popover。 如果您将使用它 - 不要忘记在Interface Builder中设置Segue标识符。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM