Мне было интересно, установлены ли мои ограничения так, как они ожидаются, я немного скептически отношусь, потому что иногда мне кажется, что процесс изменения frame.size.height
вызывает немного дрянной анимации
Например: у меня есть UINavigationController
и WKWebView
, прокрутка WKWebView
скрывает / показывает UINavigationBar
из UINavigationController
соответственно, поэтому в этом процессе я изменяю navigationBar.frame.origin.y
, navigationBar.alpha
асинхронно используя UIView.animate
используя WKWebView
'UIScrollViewDelegate
Я использовал программную настройку ограничений, как будто я WKWebView в построителе интерфейса по какой-то причине вылетает из приложения.
Я покажу вам код:
Установочные ограничения:
func setAndConstraint() {
webviewContainer.leftAnchor.constraint(equalTo: view.leftAnchor).isActive = true
webviewContainer.rightAnchor.constraint(equalTo: view.rightAnchor).isActive = true
webviewContainer.topAnchor.constraint(equalTo: navigationBar.bottomAnchor).isActive = true
webviewContainer.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true
progressView.leftAnchor.constraint(equalTo: webviewContainer.leftAnchor).isActive = true
progressView.rightAnchor.constraint(equalTo: webviewContainer.rightAnchor).isActive = true
progressView.topAnchor.constraint(equalTo: webviewContainer.topAnchor).isActive = true
sharedWebManager.currentWebview().leftAnchor.constraint(equalTo: webviewContainer.leftAnchor).isActive = true
sharedWebManager.currentWebview().rightAnchor.constraint(equalTo: webviewContainer.rightAnchor).isActive = true
sharedWebManager.currentWebview().topAnchor.constraint(equalTo: webviewContainer.topAnchor).isActive = true
sharedWebManager.currentWebview().bottomAnchor.constraint(equalTo: webviewContainer.bottomAnchor).isActive = true
constraintsDidSet = true
}