在iOS 8上,旋转时更改XIB无法正常工作
我的应用程序在iOS 8上运行时遇到问题。当我在纵向模式下启动应用程序时,它工作正常,但当在横向模式下启动时,我有这样的事情 我使用2XIB,并根据此代码在旋转时对其进行更改。它在iOS 7上运行良好,但在iOS 8上无法正常运行在iOS 8上,旋转时更改XIB无法正常工作,ios,xcode,Ios,Xcode,我的应用程序在iOS 8上运行时遇到问题。当我在纵向模式下启动应用程序时,它工作正常,但当在横向模式下启动时,我有这样的事情 我使用2XIB,并根据此代码在旋转时对其进行更改。它在iOS 7上运行良好,但在iOS 8上无法正常运行 -(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration { if( UI
-(void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
if( UIInterfaceOrientationIsLandscape(toInterfaceOrientation) )
{
[[NSBundle mainBundle] loadNibNamed: [NSString stringWithFormat:@"%@-landscape", NSStringFromClass([self class])]
owner: self
options: nil];
[self viewDidLoad];
}
else
{
[[NSBundle mainBundle] loadNibNamed: [NSString stringWithFormat:@"%@", NSStringFromClass([self class])]
owner: self
options: nil];
[self viewDidLoad];
}
}
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:YES];
if (UIInterfaceOrientationIsLandscape(self.interfaceOrientation))
{
[[NSBundle mainBundle] loadNibNamed: [NSString stringWithFormat:@"%@-landscape", NSStringFromClass([self class])]
owner: self
options: nil];
[self viewDidLoad];
} else if (UIInterfaceOrientationIsPortrait(self.interfaceOrientation)){
[[NSBundle mainBundle] loadNibNamed: [NSString stringWithFormat:@"%@", NSStringFromClass([self class])]
owner: self
options: nil];
[self viewDidLoad];
}
}
-willRotateToInterfaceOrientation:duration:在iOS 8中不推荐使用。改为使用-viewwillTransitionOnSize:和TransitionCoordinator:。如果需要获得方向,请使用[[UIApplication sharedApplication]statusBarOrientation]