ohh*_*hho 5 ios ios8 iphone-6 iphone-6-plus ios-keyboard-extension
假设iPhone 6 Plus显示器处于标准模式(设置>显示>视图>标准),UIInputViewController inputView键盘扩展的返回宽度取决于主机应用程序是否针对iPhone 6/iPhone 6 Plus屏幕进行了优化.
例如,内置的Notes应用程序返回宽度为414点(未缩放),其中LINE应用程序(从v4.7.2开始)返回320点(缩放).
键盘扩展如何确定主机应用程序窗口的宽度(例如viewDidLoad,之前,之前viewDidiLoad)?
您可以使用定义的宏:
#define IS_OS_8_OR_LATER ([[[UIDevice currentDevice] systemVersion] floatValue] >= 8.0)
#define IS_IPAD (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
#define IS_IPHONE (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
#define IS_IPHONE_5 (IS_IPHONE && ([[UIScreen mainScreen] bounds].size.height == 568.0) && ((IS_OS_8_OR_LATER && [UIScreen mainScreen].nativeScale == [UIScreen mainScreen].scale) || !IS_OS_8_OR_LATER))
#define IS_STANDARD_IPHONE_6 (IS_IPHONE && [[UIScreen mainScreen] bounds].size.height == 667.0 && IS_OS_8_OR_LATER && [UIScreen mainScreen].nativeScale == [UIScreen mainScreen].scale)
#define IS_ZOOMED_IPHONE_6 (IS_IPHONE && [[UIScreen mainScreen] bounds].size.height == 568.0 && IS_OS_8_OR_LATER && [UIScreen mainScreen].nativeScale > [UIScreen mainScreen].scale)
#define IS_STANDARD_IPHONE_6_PLUS (IS_IPHONE && [[UIScreen mainScreen] bounds].size.height == 736.0)
#define IS_ZOOMED_IPHONE_6_PLUS (IS_IPHONE && [[UIScreen mainScreen] bounds].size.height == 667.0 && IS_OS_8_OR_LATER && [UIScreen mainScreen].nativeScale < [UIScreen mainScreen].scale)
Run Code Online (Sandbox Code Playgroud)
或者如果正常的话,如果在 iPhone 6 plus 上放大的话,[UIScreen mainScreen].nativeScale女巫会给你2.6f2.8f
| 归档时间: |
|
| 查看次数: |
863 次 |
| 最近记录: |