我正在尝试根据设备显示不同的方向。
在iPhone上我想允许纵向显示,在iPad上我希望允许使用landscapeleft方向。
这可能吗?
我试过
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft);
}
else {
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
}
答案 0 :(得分:1)
您发布的代码完成了这项工作。但是,您需要将支持的设备方向添加到Info.plist。最简单的方法是在Project->Target->Summary->Supported Device Orientations
部分选择适当的设置。
答案 1 :(得分:1)
将此添加到您的app delegate :( Swift)
func application(application: UIApplication, supportedInterfaceOrientationsForWindow window: UIWindow?) -> Int {
if UIDevice.currentDevice().userInterfaceIdiom == .Phone {
return Int(UIInterfaceOrientationMask.Portrait.rawValue)
} else {
return Int(UIInterfaceOrientationMask.LandscapeLeft.rawValue | UIInterfaceOrientationMask.LandscapeRight.rawValue)
}
}