iPhone:viewWillAppear之前的viewDidLoad之后调用什么?
这里真的很奇怪的行为。 我有一个视图里面的滚动视图,其中包含我的界面。
在我的viewDidLoad
,我将scrollView的框架设置为0,0的原点。
我在我的viewDidLoad
的末尾logging原点,它是0.但是,在我的viewWillAppear
的开始,原点是-20。 有谁知道什么样的方法可以调用,这将做到这一点?
提前致谢
如果你想知道它可能是什么,你可以尝试注册你的视图的键值观察,如下所述: http : //developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/KeyValueObserving/KeyValueObserving html的
您可以注册以侦听对frame属性的更改,然后在observe方法中设置一个断点,以便您可以准确地查看将原点设置为奇怪值时堆栈跟踪的内容。
您正在使用当前的方法优先顺序:
-(void)loadView; -(void)viewDidLoad; -(void)viewWillAppear; -(void)viewDidAppear;
有没有可能是一个旋转调用或其他方法,如didRotateToInterfaceOrientation;
例如? 另外,这是从一个笔尖文件加载的控制器的滚动视图的一部分?
20像素的差异和笔尖文件似乎总是悲哀,但与界面生成器和状态栏。 你是否设置了与你在应用程序中使用的相同状态栏状态的笔尖?
如果你已经隐藏你的应用程序的状态栏,你有没有在Interface Builder中做同样的事情?