我遇到了与bug report对Apple所描述的问题类似的问题。
基本上,将文字粘贴到UISearchBar
(UISearchController
的一部分)时,键盘上未启用返回键。 (虽然在输入字符时会启用它。)
基本上,enablesReturnKeyAutomatically
会被忽略,因为默认情况下此属性应为true
。
重现步骤:
UISearchBar
的{{1}}成为第一响应者。UISearchController
UISearchBar
按钮预期结果:
实际结果:
即使这似乎是一个错误,是否有针对此特定问题的解决方法?特别是Twitter或Product Hunt等应用程序以某种方式绕过它。
答案 0 :(得分:4)
以下将会这样做。请注意,如果粘贴到已有文本的搜索栏中,搜索按钮将已启用,因此只有在当前搜索文本为空时才需要特殊情况。
func searchBar(searchBar: UISearchBar, shouldChangeTextInRange range: NSRange, replacementText text: String) -> Bool {
if text.characters.count > 0 && range.length == 0 && range.location == 0 {
dispatch_async(dispatch_get_main_queue()) {
searchBar.resignFirstResponder()
searchBar.becomeFirstResponder()
}
}
return true
}