viewWillAppear强制帧y为0?

时间:2013-01-08 03:24:22

标签: objective-c ios uiview uiviewcontroller viewwillappear

我创建了一个视图控制器并将其frame.y设置为80,之后我需要在模态VC解散时显示另一个模态视图控制器,调用第一个视图控制器的viewWillAppear,然后调用它的帧。 y被设置回0。

我可以阻止此行为吗?我知道我可以在viewWillAppear将frame.y重置为80.但是有更聪明的方法吗?

1 个答案:

答案 0 :(得分:0)

由于AutoLayout可能会发生这种情况...... 在调用ViewDidAppear或调用ViewDidAppear之后,尝试NSLogging查看变量是否发生变化...... ViewDidLoad怎么样? 在你的.h文件中你可以创建和整数,并且在ViewDidLoad中设置它等于frame.y,然后在ViewDidAppear中将is重置为零后再将它改回那个整数...这样你就不必担心每次调整xib文件中的大小时都会改变这段代码的麻烦。