Это довольно очевидно, так как механизм автоматического размещения не может определить y положение вашего представления таблицы.Даже если вы указали, что:
collectionview.bottom = tableview.top
это может быть практически в любом месте внутри вертикального пространства.
Вы должны иметь приблизительное представление о том, сколькопространство каждого из ваших просмотров контента занимают дети.Дайте им относительное ограничение по высоте.
Что-то вроде:
wrapper view.height = 0.3 * content view height
collection view.height = 0.35 * content view height
table view.height = 0.35 * content view height
Способ сделать это - установить равные ограничения по высоте для каждого в XCode, а затем изменить множители на 0,3, 0,35 и 0,35 с помощьювходя в каждое ограничение.
Само собой разумеется: Правило состоит в том, чтобы все множители суммировали до 1.
Это лучший подход, который не зависит от устройства.и вам не нужно делать это для каждого класса размеров.
У меня есть подробное руководство по основным принципам автоматического размещения, здесь .