iPhone開(kāi)發(fā)應(yīng)用中如何以消息通知方式設(shè)置旋轉(zhuǎn)View
iPhone開(kāi)發(fā)應(yīng)用中以消息通知方式設(shè)置旋轉(zhuǎn)View是本文要介紹的內(nèi)容,主要是來(lái)學(xué)如何來(lái)旋轉(zhuǎn)View,具體內(nèi)容來(lái)看本文詳解??吹竭@篇不錯(cuò), 直接轉(zhuǎn)載過(guò)來(lái)了, 沒(méi)什么可解釋的,一看就明白 :)。
整個(gè)程序需要支持橫豎屏切換得時(shí)候,會(huì)比較簡(jiǎn)單,在每個(gè)ViewController 的
- - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
方法中,return YES; 就好。
可如果只是要某個(gè)VC( = View Controller)支持橫豎屏切換呢?單獨(dú)在那個(gè)view controller中像上面那樣做是沒(méi)有效果的。
這個(gè)時(shí)候我們可以取 UIDevice的 Orientation來(lái)判定:
1、在VC中注冊(cè) UIDevice 的 UIDeviceOrientationDidChangeNotification 通知:
- NSNotificationCenter *center = [NSNotificationCenter defaultCenter];
- [center addObserver:self selector:@selector(doRotate:) name:UIDeviceOrientationDidChangeNotification object:nil];
2、在自己的 doRotate函數(shù)里面處理:
- - (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。
小結(jié):iPhone開(kāi)發(fā)應(yīng)用中以消息通知方式設(shè)置旋轉(zhuǎn)View的內(nèi)容介紹完了,希望通過(guò)本文的學(xué)習(xí)能對(duì)你有所幫助!