我正在为iOS8构建自定义键盘。 我希望我的键盘支持纵向和横向模式。 如何确定设备方向? 获取设备方向目前在自定义键盘中效果不佳。
答案 0 :(得分:1)
willRotateToInterfaceOrientation
和didRotateFromInterfaceOrientation
,虽然它们已在iOS 8中弃用。但是,它们的替换willTransitionToTraitCollection
在轮换时不会被调用,但可能因为特征集合没有& #39; t改变键盘。
答案 1 :(得分:0)
不幸的是,用于确定设备方向的标准方法在iOS8自定义键盘中还不起作用。
您可以通过检查设备宽度和高度之间的比率来确定设备方向。 身高> width = portrait 宽度> height = landscape
答案 2 :(得分:0)
您可以使用此方法:
typedef NS_ENUM(NSInteger, InterfaceOrientationType)
{
InterfaceOrientationTypePortrait,
InterfaceOrientationTypeLandscape
};
- (InterfaceOrientationType)orientation
{
InterfaceOrientationType result;
if([UIScreen mainScreen].bounds.size.width < [UIScreen mainScreen].bounds.size.height)
{
result = InterfaceOrientationTypePortrait;
}
else
{
result = InterfaceOrientationTypeLandscape;
}
return result;
}