我在故事板中有5个视图.我希望每个视图方向都会不同,例如一个视图将是UIInterfaceOrientationLandscapeRight,另一个视图将是UIInterfaceOrientationLandscapeLeft或UIInterfaceOrientationPortrait或UIInterfaceOrientationPortraitUpsideDown.那么如何设置这种视图方向是不同的.
我用过
[[UIDevice currentDevice] setOrientation:UIInterfaceOrientationLandscapeRight];
但它显示警告’UIDevice可能无法响应setOrientation’.根据我使用的许多stackoverflow编写器
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation {
//return UIInterfaceOrientationLandscapeLeft;
return (toInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown);
}
以上代码,但它在我的项目中不起作用.那么屏幕方向的正确程序是什么?
提前致谢.
最佳答案 试试这个
[[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeLeft animated:YES];
您不能设置UIDeviceOrientation,因为它是物理参数.如果您将设备保持在纵向 – 您如何以编程方式将其设置为横向?). UIDeviceOrientation的意思是 – 设备方向,而不是接口.这个答案描述了方向之间的差异:
https://stackoverflow.com/a/3897243/194544