我有这段代码:
- (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方法被调用。我该如何制作那个方法第一次调用了吗?
答案 0 :(得分:0)
我认为你第一次必须检查viewdidload的方向,然后相应地加载nib文件,你可以创建一个可以从willRotateToInterfaceOrientation调用的方法和viewDiD加载
[[UIDevice currentDevice] orientation]这将给出当前方向