我正在创建自定义键盘,我不想支持横向模式。因此,如果用户将设备旋转到横向模式,则键盘仍然处于纵向模式。我曾尝试以下方法:禁用自定义键盘在ios中的旋转
-(BOOL)shouldAutorotate {
return NO;
}
- (UIInterfaceOrientation)preferredInterfaceOrientationForPresentation
{
return UIInterfaceOrientationPortrait;
}
- (UIInterfaceOrientationMask)supportedInterfaceOrientations {
return UIInterfaceOrientationMaskPortrait;
}
和
-(void)viewDidLoad{
NSNumber *value = [NSNumber numberWithInt:UIInterfaceOrientationPotrait];
[[UIDevice currentDevice] setValue:value forKey:@"orientation"];
}
但没有方法的工作原理。唯一的方法在旋转设备时触发:
-(void)viewWillTransitionToSize:(CGSize)size
withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
这里我在旋转后得到当前视图大小。但是,我该如何停止轮换?任何帮助将不胜感激。
相同难道这是你在找什么:http://stackoverflow.com/questions/6941849/disable-orientation-for-keyboard-in-iphone – Ariel
@Ariel:我已经试过了。不工作。 – Poles
我也在制作自定义键盘,并使用自动布局来维护纵向和横向模式。我和你的情况一样。 您现在使用自动布局还是禁用自动布局? – Ariel