UIView ограничение ведет себя по-разному при использовании iPhone X

Brosef спросил: 13 октября 2017 в 06:29 в: ios

У меня есть viewcontroller с UITableView, который занимает большую часть экрана. В нижней части viewcontroller у меня есть UIView с именем controlView и несколькими кнопками. Когда viewcontroller впервые загружается, я устанавливаю NSLayoutConstraint, который управляет высотой controlView, равным 1, чтобы controlView не отображался.

@IBOutlet weak var controlViewHeightConstraint: NSLayoutConstraint!
controlViewHeightConstraint.constant = 1.0

Когда пользователь нажимает на ячейку просмотра таблицы, я настраиваю controlViewHeightConstraint.constant, чтобы она была видимой

controlViewHeightConstraint.constant = heightConstant  //heightConstant = 65
self.view.layoutIfNeeded()

Это отлично работает для iphone 5, 6, 7, 8 и 8+ , Однако в X, когда я вызываю controlViewHeightConstraint = 1 в viewDidLoad, controlView по-прежнему виден. Любая идея, почему он появляется, когда он не должен быть видимым.

Настройка раскадровки

iPhone 8+ после касания ячейки >

iPhone X перед разливкой ячейки

iPhone X после нажатия на ячейку

0 ответов