bounds属性提供错误的信息

时间:2012-06-01 05:44:30

标签: iphone ios uiviewcontroller bounds

我刚从Xcode(iPhone的Master-Detail Application)运行模板。我只添加了

NSLog(@"%@", NSStringFromCGRect(self.view.bounds));
DetailViewController中的

:viewdidLoad

当我将MasterViewController上的屏幕(在模拟器上)旋转到横向旁边时,我推出了一个DetailViewController,在我看到的控制台中:

   {{0, 0}, {320, 460}}

这是不正确的,因为视图在横向中。

知道为什么吗?

2 个答案:

答案 0 :(得分:1)

默认情况下,您的视图边界是纵向。

如果以横向模式启动应用程序,则会在控制器出现之前向其发送轮换消息。所以尝试在viewDidAppear打印。

答案 1 :(得分:0)

您是否添加了详细信息视图: - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {     返回YES; }

如果是,那么你应该在viewWillAppear中打印这些值,因为默认情况下屏幕可能是纵向加载,然后在加载后立即旋转。