【问题标题】:How to get size of default keyboard for current device without it being displayed?如何在不显示当前设备的情况下获取默认键盘的大小?
【发布时间】:2014-12-01 23:56:37
【问题描述】:

我正在为 iOS 开发自定义键盘扩展。键盘的大小应与每台设备上的默认系统键盘大小相匹配。

为了配合应用程序的目的,我需要知道默认系统键盘的大小(纵向和横向)而不实际显示键盘。有什么办法吗?

当然,我可以在所有设备上的模拟器中测量键盘的大小,而不仅仅是将其用作常数。但是,如果发布了新设备,应用程序将无法在其上正常运行 - 它的键盘大小不会是常量。

【问题讨论】:

    标签: ios custom-keyboard ios-keyboard-extension


    【解决方案1】:

    我自己从未创建过键盘扩展程序,所以我会放弃对我有意义的东西。我建议为您的键盘设计一个一致的布局,并自动调整布局大小以填充空间。如果您没有使用 Interface Builder,我建议您在 viewDidLoad 中检查您的视图(或超级视图),看看它是否已经为您调整了大小。

    【讨论】:

    • viewDidLoad 中,大小为0,0,因此在viewWillAppear 中。但同样 - 我想在扩展应用程序中使用大小而不是在扩展本身中。在应用程序中,键盘永远不会显示,如果显示后获取大小对我有什么帮助??
    【解决方案2】:

    不,如果不实际显示键盘大小,则无法确定它。在任何应用程序中,每次由 UIKeyboardDidShowNotification 通知时,当前键盘大小应由通知观察器中的 UIKeyboardFrameBeginUserInfoKey 确定。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-17
      • 2011-10-18
      • 1970-01-01
      • 2013-03-13
      • 1970-01-01
      • 2020-03-23
      • 2023-03-19
      • 1970-01-01
      相关资源
      最近更新 更多