喜欢在标题中说明,ViewDidAppear()和ViewWillAppear()仅在应用程序启动时调用,而不是在从背景打开时调用,就像它们是ViewDidLoad()方法一样。
有人知道我做错了什么吗?我不认为我的代码是问题,但如果你需要我,我可以发布它。
提前致谢。
答案 0 :(得分:1)
ViewWillAppear:UIViews的创建相当昂贵,你应该尽可能避免在ViewWillAppear方法上这样做,因为当调用它时,这意味着iPhone已经准备好向用户显示UIView了,你在这里做的任何重量都会以一种非常明显的方式影响表现(比如动画被推迟等)。
ViewDidAppear:最后,我使用ViewDidAppear来启动需要很长时间才能执行的新线程,比如执行webservice调用以获取上面表单的额外数据。好的是因为视图已经存在并且正在向用户显示,您可以在获取数据时向用户显示一条漂亮的“等待”消息。
如果您想在应用程序来自后台并进入后台时执行某些操作,请执行以下操作 输入背景时得到 在appDelegate。
(void)applicationDidEnterBackground:(UIApplication *)application
当app来到前台时获取。
(void)applicationWillEnterForeground:(UIApplication *)application