У меня не совсем обычная проблема, связанная с смешиванием Auto Layout и Manual layout.
- view1 — суперпредставление, в котором используется автоматический макет.
- view2 — подпредставление, в котором используется макет вручную.
Высота view1 зависит от общей высоты подвидов.
Я установил translatesAutoresizingMaskIntoConstraints = NO и frame для представления2 и добавил его в качестве подпредставления к представлению1 . Результирующая высота view2 равна 0 (в layoutSubviews)
Таким образом, автоматическая компоновка view1 не обращает внимания на высоту view2 при определении собственной высоты. А затем распространите эту высоту 0 на view2.
Нужен совет. Я не уверен, что это законно.
superview size equalsдляsubview size, как ОС узнает о зависимости междуSuperView (View1)и подвидом(view2)без указания автомакета? - person Rafeek   schedule 05.02.2016frame) - person Gladkov_Art   schedule 05.02.2016frameдля подвида. иtranslatesAutoresizingMaskIntoConstraints = NO, то какSuperViewнайдетwidthиheight- person Rafeek   schedule 05.02.2016frameназначается во время выполнения, либо попыткаlayoutSubviewsможет решить вашу проблему. Лучше задавать ограничения программно. - person Rafeek   schedule 05.02.2016view2, прежде чем вставлять его вview1в качестве подвида. Пожалуйста, создайте ответ с вашими последними 2 комментариями, я приму его. - person Gladkov_Art   schedule 05.02.2016