I am developing iphone application in iOS7, i am facing problem in autorotate single screen in landscape mode programatically, while other screens remains in portrait mode. I am using Story board.
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
回答1:
I used following and its working for me in both iOS6 and iOS7 also,try following way :
// Added method for Autorotation in you app delegate
- (NSUInteger)application:(UIApplication *)application supportedInterfaceOrientationsForWindow:(UIWindow *)window{
//NSLog(@"AppDelegate -- supportedInterfaceOrientationsForWindow");
if([UICommonUtils isiPhone]){
return UIInterfaceOrientationMaskPortrait;
}else if(flagOrientationAll == YES){
return UIInterfaceOrientationMaskLandscape;
}
}
Add following in your view controller
// set flag "flagOrientationAll" to rotate only one view in your perticular view
-(void)viewWillAppear:(BOOL)animated
{
NSLog (@"webViewController -- viewWillAppear");
[super viewWillAppear:animated];
PlayWithWSWithLibAppDelegate *delegate = (PlayWithWSWithLibAppDelegate *) [[UIApplication sharedApplication] delegate];
delegate.flagOrientationAll = YES;
}
-(void)viewWillDisappear:(BOOL)animated
{
NSLog (@"webViewController -- viewWillDisappear");
PlayWithWSWithLibAppDelegate *delegate = (PlayWithWSWithLibAppDelegate *)[[UIApplication sharedApplication] delegate];
delegate.flagOrientationAll = NO;
}