执行segue时隐藏键盘转换

时间:2018-04-02 11:53:18

标签: ios swift

我目前正在为我的应用程序实现注册,我有3个ViewControllers,其中包含一个文本字段。我想隐藏这些视图控制器之间的任何键盘转换。

例如: 当我在VC:A和我正在使用打开键盘对VC:B执行segue时,其中一个新文本字段将成为第一个响应者,并且将显示小键盘转换。 (首先,键盘关闭,然后再次为新字段打开键盘。)

那么如何全局保持键盘为多个视图控制器打开?

3 个答案:

答案 0 :(得分:1)

这可能不是最好的方法,你可以像孩子一样添加第二个VC

protected Map<? extends A, Integer> baseMap;

答案 1 :(得分:0)

对于全局保持键盘为多个视图控制器打开,您必须将textView.becomeFirstResponder()放在ViewControllers中。(在页面加载时您要显示键盘的位置)。为每个文本字段设置IBOutlet

 @IBOutlet weak var textView: UITextField!
    override func viewDidLoad() {
        super.viewDidLoad()
         textView.becomeFirstResponder()
    }

如果您在模拟器中看不到任何键盘,则执行此操作后,只需按 -

即可
  1. cmd + k
  2. shift + cmd + k
  3. 仅对模拟器执行此操作。谢谢。

答案 2 :(得分:0)

解决方案是拥有一个自定义UINavigationController,该UINavigationController具有不可见或隐藏的UITextField(只需将框架设置为零并将其添加到子视图中),即可将其设置为在加载时变为FirstResponder。

从那里,在每次切换视图时将其设置为firstResponder,并在viewDidAppear上设置真实的textField。