Добавьте эту строку в ваш код:
self.translatesAutoresizingMaskIntoConstraints = false
contentView.translatesAutoresizingMaskIntoConstraints = false
, и в вашей функции ShowToastView сначала найдите тот, который является нижним ограничением, а затем попробуйте обновить его следующим образом (запомните, это код подсказки, вы можете обновить егосогласно вашему требованию):
@objc func showToastViewWithAnimation(viewController: Any) {
if let vc = viewController as? ViewController {
if let bottom = self.contentView.superview?.constraints.first(where: { (constraint) -> Bool in
return constraint.firstAttribute == .bottom}){
// in this condition find your bottom constraint and update it, don't save your constraint in a variable.
bottom.constant = -20
UIView.animate(withDuration: 0.8, animations: {
vc.view.layoutIfNeeded()
}) { (complete) in
}
}
}
}