一旦视图出现,键盘是否可能自动打开?

时间:2015-06-05 22:26:23

标签: ios swift uisearchbar uikeyboard

我有两个视图控制器,第一个IC有一个按钮。 当我按下按钮时,第二个IC会推动视图。 第二个IC有一个搜索栏。

问题:

第二个接口控制器被推入视图后,键盘是否可能自动打开

这是我项目的链接:https://www.dropbox.com/sh/5jqwv9vfrtlbh9f/AACOAWy-OAqFTJGgDCYsy-xra?dl=0

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:3)

这适用于包含searchBar的视图控制器:

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)
    self.searchController.searchBar.becomeFirstResponder()
}

编辑在Swift

编辑2: 在查看您的项目时,您可以通过调用searchBar.canBecomeFirstResponder()函数中的viewDidAppear()来确定searchBar尚未准备好成为第一响应者。我没有深入挖掘以确切知道searchBar何时能够成为第一响应者,但你可以使用NSTimer来解决这个问题:

func showKeyboard() {
    self.searchController.searchBar.becomeFirstResponder()
}

override func viewDidAppear(animated: Bool) {
    super.viewDidAppear(animated)

    var timer = NSTimer.scheduledTimerWithTimeInterval(0.01, target: self, selector: Selector("showKeyboard"), userInfo: nil, repeats: false)
}