应用程序返回的我的导航控制器的景色之一,我有一个方法- (void) loadAlert
是得到一个网页的内容,分析它,并把上的相关内容UITextView
。该方法调用位于我的视图控制器的viewDidAppear:
部分。当视图第一次加载时,以及视图在导航到时全部显示时,它工作正常。当调用一个方法来重新加载视图从背景
我也希望这个数据加载发生在应用程序从后台返回。由于许多职位#1和其他来源的指示,我把我的方法调用中applicationDidBecomeActive:
:当从后台应用程序返回
- (void)applicationDidBecomeActive:(UIApplication *)application
{
MainViewController *mainView = [[mainViewController alloc] init];
[mainView loadAlert];
}
然而,没有在视图中出现。我期望UITextView
清除,UIActivityIndicatorView
旋转,而内容是从互联网获得的,而新的内容将被加载到UITextView
。
我知道该方法正在被调用,但在视图内没有任何事情发生。我的感觉是,这个方法被调用时视图还没有加载。 我在哪里可以放置我的方法调用,以便应用程序从后台返回时,如果此特定视图是导航控制器中显示的当前视图,它实际上会刷新UI?
这是错误的方法。当从后台返回时,你需要'applicationWillEnterForeground:',而不是'applicationDidBecomeActive:'。 – rmaddy 2013-02-26 22:10:42