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

当iphone应用程序从后台启动时,UIView会发生变化,iphone,uiview,background,Iphone,Uiview,Background,我的iphone应用程序在UIViewController下有一个用户表单 当我退出应用程序(转到后台模式)并再次启动应用程序时,我的UIView会更改其位置和大小。(这些视图取决于键盘位置) 肯定是我的错 我试图弄清楚当应用程序再次从后台启动时会发生什么,以及在哪里可以进行UIView更改 也许你可以建议阅读任何链接 谢谢。每次从内存转储视图时,都会调用UIViewController的viewDidLoad和ViewDisplay方法,这在应用程序进入后台时通常会发生。根据您的代码,您可能正

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

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

我试图弄清楚当应用程序再次从后台启动时会发生什么,以及在哪里可以进行
UIView
更改

也许你可以建议阅读任何链接


谢谢。

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

  • 更改代码以更好地适应模型-视图-控制器模式,以便定位代码和变量都位于控制器中,并在其“ViewWillEnglishe
    viewDidUnload`方法(更好的方法)中适当地清理内容,或

  • 清除应用程序委托的applicationWillEnterBackground方法中的遗留问题


  • 一点代码会对我们有很大帮助,发布一些代码ryt不会伤害你吗?这就是问题所在。我的UIViewController不调用“viewDidLoad”、“ViewWillDisplay”等。当应用程序转到后台并重新启动时,我不会收到这些调用。我只在我的应用程序委托中获得“ApplicationIdentinterBackground:”。