2

我正在使用情节提要开发 iPad 横向应用程序。我已经完成了以下步骤。我的应用程序是在模拟器上以横向打开屏幕.. 但是帧错误。

  1. 来自 xcode 用于情节提要的示例应用程序模板。
  2. 仅允许 info-plist 文件中的横向
  3. 故事板 -> UIViewController -> 模拟矩阵 -> 将方向更改为横向
  4. 在视图 controller.m 中实现以下方法

           - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
        {
         // Return YES for supported orientations
       return ((interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (interfaceOrientation == UIInterfaceOrientationLandscapeRight)); 
            } 
    

现在,当我获取框架的 NSLog 并设置边界时,它会显示纵向框架。

   - (void)viewDidLoad
  {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSLog(@"bounds ::%@",NSStringFromCGRect(self.view.bounds));
    NSLog(@"frame ::%@",NSStringFromCGRect(self.view.frame));
   }

结果日志:

   bounds ::{{0, 0}, {748, 1024}}

   frame ::{{20, 0}, {748, 1024}}

我错过了什么吗?

4

2 回答 2

5

在 viewDidLoad 方法中,您没有得到正确的界限。您在 viewDidAppear 方法中执行此操作。viewDidAppear 方法在视图完全加载并具有正确边界时调用。

于 2013-05-15T07:09:08.720 回答
0

尝试设置它并查看输出。

边界 ::{{0, 0}, {1024, 748}}

帧 ::{{20, 0}, {1024, 748}}

于 2013-05-15T06:47:08.987 回答