我的自定义键盘为所有 Apple 设备的每个屏幕分辨率预设。所以我有 iphone、iphon5、iphone6、iphone6plus 和 ipad 预设。
但如果用户在 iPad 上运行 iPhone 应用程序(如 instagram),我需要加载 iphone 键盘预设并使用它的几何形状。
当应用程序像 iPhone 5 应用程序一样运行时,iPhone 6 和 6+ 也可以使用拉伸模式。
因此,确定UI_USER_INTERFACE_IDIOM
不是解决方案。键盘扩展和主机应用程序可以以不同的方式查看屏幕几何图形,所以我被困在这里。需要至少为主机应用程序获取应用程序框架或任何其他显式方式来获取该几何图形。
应用程序和键盘扩展以不同的方式查看几何图形:
在 ipad 屏幕上的 iphone 应用程序内部运行时,Swift 键似乎也有同样的错误。
ipad 上 iphone 应用程序中的 Swiftkey: