【问题标题】:inputAccessoryView is stuck at bottom of screeninputAccessoryView 卡在屏幕底部
【发布时间】:2019-06-01 18:23:30
【问题描述】:

我已经看过this solution。 我创建了一个显示错误的示例项目。

视图上只有一个 UITextField。

这是我的代码:

class ViewController: UIViewController {

    @IBOutlet weak var mm: UITextField!
    override func viewDidLoad() {
        super.viewDidLoad()
        let x = UIView(frame: CGRect(x: 0, y: 0, width: view.frame.width, height: 40))
        x.backgroundColor = .red
        mm.inputAccessoryView = x
    }
}

当我点击文本字段时,会发生以下情况: --> 红色视图出现在底部,无论键盘是否关闭,它都会卡在那里。 有什么帮助吗?

【问题讨论】:

  • 你在真实的 iOS 设备上看到过同样的问题吗?
  • 我没有这个设备,所以我不知道。谁能确认这只是一个模拟器错误?

标签: ios swift


【解决方案1】:

您只是在切换键盘,实际上并没有关闭键盘尝试关闭键盘。

import UIKit

class ViewController: UIViewController, UITextFieldDelegate {
    @IBOutlet weak var textField: UITextField!

    override func viewDidLoad() {
        super.viewDidLoad()
        textField.delegate = self
        let view = UIView(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: 40))
        view.backgroundColor = .red
        textField.inputAccessoryView = view
    }

    func textFieldShouldReturn(_ textField: UITextField) -> Bool {
        textField.resignFirstResponder()
        return true
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-14
    • 2016-09-17
    • 2015-09-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-10
    • 1970-01-01
    • 2021-12-28
    相关资源
    最近更新 更多