-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation{
//Return YES for supported orientations
return (interfaceOrientation ==UIInterfaceOrientationPortrait);
}2,但是再ios6的系统上,上述方法被弃用了,取而代之的是以下2个方法,设置某个viewcontroller的旋转
-(BOOL)shouldAutorotate{
if(self.preferredInterfaceOrientationForPresentation==UIInterfaceOrientationMaskLandscapeLeft|| self.preferredInterfaceOrientationForPresentation==UIInterfaceOrientationMaskLandscapeRight){//支持横屏
returnYES;
}
return NO;//禁止旋转
}
-(NSUInteger)supportedInterfaceOrientations{
returnUIInterfaceOrientationMaskLandscape;
//returnUIInterfaceOrientationMaskPortrait;//禁止旋转
}
除了这个2个方法之外,还要再把程序的所有viewcontroller的添加,用以下方法替代// [windowaddSubview:testUserViewController_.view];替换为:
window.rootViewController =testUserViewController_;
3, 如果整体程序的viewcontroller都不需要旋转,在appdelegate 中调用该方法
- (NSUInteger)application:(UIApplication*)application supportedInterfaceOrientationsForWindow:(UIWindow*)window{
returnUIInterfaceOrientationMaskPortrait;
}
4,所以在做系统版本适配的时候,应该把1,2中的方法同时使用,程序会在不同系统版本的情况下去调用相应的设置方法。