似乎并不是每次通过选项卡栏显示视图时,都会调用viewDidAppear方法。在此问题上,我已进行了尽可能多的搜索,但并未真正找到确切的答案。

有什么建议或解决方法吗?

最佳答案

为了使viewWillAppearviewDidAppear在选项卡栏控制器中正常运行,您将需要确保在显示选项卡栏控制器本身时调用这些方法。也就是说,如果您以编程方式创建UITabBarController,请确保调用以下方法:

UITabBarController *myTabBarController = [[UITabBarController alloc] init];
[myTabBarController setViewControllers:myViewControllerArray];
[myTabBarController viewWillAppear:NO];
[[self view] addSubview:[myTabBarController view]];
[myTabBarController viewDidAppear:NO];


如果您的标签栏控制器是在NIB文件中创建的,则此方法不适用-在这种情况下,我不确定为什么不会自动调用您的viewDidAppear方法。

关于iphone - 按下选项卡栏项时是否可以重新加载 View ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1848602/

10-09 16:27