В моем приложении я хочу отображать раскрывающуюся таблицу после щелчка по текстовому полю. Но он плохо работает.
tableViewOne.snp.updateConstraints { (make) in
let superViewOriginY: CGFloat = (textField.superview?.frame.origin.y)!
let textFieldMaxY: CGFloat = textField.frame.maxY
let navigationHeight: CGFloat = self.navigationController!.navigationBar.frame.size.height
let textFieldHeight = textField.frame.height
let tableViewOneTopPsition = superViewOriginY + textFieldMaxY + navigationHeight + textFieldHeight
make.top.equalTo(tableViewOneTopPsition)
make.left.equalTo(15)
make.right.equalTo(-15)
make.height.equalTo(0)
}
self.view.layoutIfNeeded()
UIView .animate(withDuration: 0.4, animations: {
self.tableViewOne.snp.updateConstraints({ (make) -> Void in
make.height.equalTo(170)
})
self.view.layoutIfNeeded()
}, completion: nil)
Написав этот код, он работает для симулятора iphone 11 Max. Но для симулятора iphone 8 plus есть некоторый разрыв между текстовым полем и табличным представлением. На следующих изображениях есть текстовые поля внутри представления стека.
https://i.stack.imgur.com/JDUkw.jpg
https://i.stack.imgur.com/GkQXd.png
First one image is the iphone 11max pro image
and the second one is the iphone 8 plus image
если я напишу
make.top.equalTo(textFieldMaxY)
the i will be
https://i.stack.imgur.com/fmNNe.jpg
Пожалуйста, помогите мне решить проблему.