ios – Swift:在UITextField上成为第一个响应者不工作?

前端之家收集整理的这篇文章主要介绍了ios – Swift:在UITextField上成为第一个响应者不工作?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在Storyboard上创建了一个UITextField的自定义UIViewController.在viewDidLoad上,我将UITextFIeld设置为FirstResponder,没有发生任何事情(没有键盘弹出).

然后我尝试调用resignFirstResponder(),但它返回false.接下来,我试图通过使用@ Get the current first responder without using a private API上的代码循环所有的子视图来找出第一个响应者.最终没有一个子视图是第一个响应者.

我的ViewController在故事板

我的代码

class BLTestViewController: UIViewController,UITextFieldDelegate {

    @IBOutlet var tf: UITextField

    override func viewDidLoad() {
        super.viewDidLoad()

        tf.delegate = self
        tf.becomeFirstResponder()
        // Do any additional setup after loading the view.
    }
}

为什么不是键盘启动!我有一件事是汽车布局,但我不知道是否影响键盘弹出.

解决方法

我只是通过调用self.tf.becomeFirstResponder()indside viewDidLoad()函数来测试它,并且工作绝对正常.您需要通过按nflacco指令K键来切换键盘,并将模拟器中的硬件键盘禁用:

> iOS模拟器 – >硬件 – >键盘>取消选中“连接硬件键盘

猜你在找的iOS相关文章