【问题标题】:Get Keyboard frame without keyboardWillAppear userinfo notification, iOS获取没有keyboardWillAppear用户信息通知的键盘框架,iOS
【发布时间】:2016-12-05 06:53:41
【问题描述】:

我正在开发一个 iPhone 应用程序,我必须在其中显示一些自定义选择器,以防出现按钮事件。但我不想为我的自定义pickerView 的框架硬编码值。我搜索并找到了keyboardWillShow 通知 userInfo 方法,但在我的情况下,我没有显示键盘,因此无法从中获取框架。任何人都可以帮助我获得可用于自定义选择器的键盘框架吗?

【问题讨论】:

  • 什么?你不能。您希望您的 pickerView 与键盘具有相同的框架,而无需显示键盘。然后使您的 pickerView 与键盘具有相同的高度和与屏幕相同的宽度。您必须硬编码约束常数或框架高度常数。
  • 有什么用?我同意 Brandon,你可以硬编码 CGRect 与键盘框架完全匹配

标签: ios swift keyboard


【解决方案1】:

您可以使用UITextField 并调用becomeFirstResponder 并立即在其上调用resignFirstResponder,这样它就会在不实际看到键盘的情况下显示和隐藏。

按钮的操作方法如下所示:

@IBAction func showPickerView(sender: AnyObject)
{
    let textField = UITextField()
    view.addSubview(textField)
    textField.becomeFirstResponder()
    textField.resignFirstResponder()
    textField.removeFromSuperview()
}

你可以收听通知并获取高度。

更多信息:Get height of iOS keyboard without UIKeyboardWillShowNotification

【讨论】:

    猜你喜欢
    • 2015-02-04
    • 2012-08-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-07
    • 1970-01-01
    相关资源
    最近更新 更多