当iphone应用程序从后台启动时,UIView会发生变化

时间:2011-03-16 11:37:02

标签: iphone uiview background

我的iphone应用程序在UIViewController下有一个用户表单。

当我退出应用程序(转到后台模式)并再次启动应用程序时,我的一些UIView会更改其位置和大小。 (这些UIViews取决于键盘位置) 肯定是某个地方是我的错。

我尝试计算应用程序从后台再次启动时发生了什么,以及UIView更改的位置。

可以建议您阅读任何链接。

谢谢。

1 个答案:

答案 0 :(得分:1)

每次从内存中转储视图时都会调用UIViewController的viewDidLoadviewWillAppear方法,这在应用程序进入后台时通常会发生。根据您的代码,您可能存储了一些未被清除的位置数据。如果是这种情况,您可以:

  1. 更改代码以更好地适应模型 - 视图 - 控制器模式,以便定位代码和变量全部在控制器中,并在“viewWillDisappear and viewDidUnload”方法中适当地清理它们(更好的方法),或

  2. 清除应用程序委托的applicationWillEnterBackground方法中遗留的任何残余。