当我返回那个 Controller 时,我遇到了 viewController 的闪光,其中 searchField 是第一响应者。我在ios9上试过,没有这个问题,看来是ios10引起的。
请问是什么原因造成的,如何解决? 预先感谢您提出任何建议。
编辑:
我的 View 层次结构非常简单(它只是一个演示),但问题也发生在这里,我正在调查这里。代码如下所示:
class ViewController: UIViewController {
@IBOutlet weak var searchBar: UISearchBar!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
}
override func viewWillAppear(_ animated: Bool) {
searchBar.becomeFirstResponder()
}
}
最佳答案
我也遇到过这个问题。就我而言,第一页上的屏幕是 ScrollView 内的堆栈 View ,我仍然不确定为什么会发生这种情况,但在 中设置了 ScrollView 的内容插入viewWillAppear
为我解决了这个问题。我为此使用了这段代码:
let insets = UIEdgeInsetsMake(0.0, 0.0, 0.0, 0.0)
scrollView.contentInset = insets
scrollView.scrollIndicatorInsets = insets
scrollView.contentSize = CGSize(width: stackView.frame.width, height: stackView.frame.height)
如果这种类型的解决方案不适合您,您能否在 View 中添加更多有关对象层次结构的详细信息?
也许设置 UISearchBarController
的 contentInset
可以解决这个问题。
关于ios - ViewController 的闪烁,其中 textField 是第一响应者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42114151/