消息通知方式设置旋转view
看到这篇不错, 直接转载过来了, 没什么可解释的,一看就明白 :)
出处: http://www.marsiphone.cn/tag/uidevice/
整个程序需要支持横竖屏切换得时候,会比较简单,在每个ViewController 的
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
方法中,return YES; 就好。
可如果只是要某个VC( = View Controller)支持横竖屏切换呢?单独在那个view controller中像上面那样做是没有效果的。
这个时候我们可以取 UIDevice的 Orientation来判定:
1、在VC中注册 UIDevice 的 UIDeviceOrientationDidChangeNotification 通知:
NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
[center addObserver:self selector:@selector(doRotate:) name:UIDeviceOrientationDidChangeNotification object:nil];
2、在自己的 doRotate函数里面处理:
- (void)doRotate:(NSNotification *)notification{
UIDevice *myDevice = [UIDevice currentDevice];
UIDeviceOrientation deviceOrientation = [myDevice orientation];
UIApplication *app = [UIApplication sharedApplication];
[app setStatusBarOrientation:deviceOrientation];
}
3.
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
也是要 return YES;