没有调用正确的NIB文件

时间:2012-07-05 10:03:23

标签: ios uiinterfaceorientation

我有这段代码:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}

-(void) willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
if( UIInterfaceOrientationIsLandscape(toInterfaceOrientation) )
{
    [[NSBundle mainBundle] loadNibNamed:@"ChatViewController-landscape" owner:self options:nil];

}else {

    [[NSBundle mainBundle] loadNibNamed:@"ChatViewController" owner:self options:nil];

}
}

我在if(UIInterfaceOrientationIsLandscape(toInterfaceOrientation)行中设置了一个断点。但是第一次它没有进入那行代码。如果我转动手机,那个时间和subsecuent方法被调用。我该如何制作那个方法第一次调用了吗?

1 个答案:

答案 0 :(得分:0)

我认为你第一次必须检查viewdidload的方向,然后相应地加载nib文件,你可以创建一个可以从willRotateToInterfaceOrientation调用的方法和viewDiD加载

[[UIDevice currentDevice] orientation]这将给出当前方向