在这一行:[self deviceInterfaceOrientationChanged:interfaceOrientation];
我收到此警告
Implicit conversion from enumeration type ' UIInterfaceOrientation' to different enumeration type 'UIDeviceOrientation'?
你可以帮帮我吗?谢谢你
以下是代码:
-(void) receivedRotate: (NSNotification*) notification { NSLog(@"receivedRotate"); UIDeviceOrientation interfaceOrientation = [[UIDevice currentDevice] orientation]; if(interfaceOrientation != UIDeviceOrientationUnknown) { [self deviceInterfaceOrientationChanged:interfaceOrientation]; } else { NSLog(@"Unknown device orientation"); } }
答案 0 :(得分:0)
UIDeviceOrientation和UIInterfaceOrientation是不同的类型,第一个是设备方向,包括其他状态,如Face up或Face Down等,而第二个只覆盖2D状态,如Portrait和Landscape。
不要从设备获取设备方向,而是从状态栏获取,如下所示:
[[UIApplication sharedApplication] statusBarOrientation]
此方法将返回UIInterfaceOrientation值,问题将消失。