Хорошо, у меня есть контроллер представления, который находится в контейнере другого представления.
MainView
View
Someview
ContainerView (contains ContainedViewController)
Otherview
ContainedViewController
ContainedView (height can get resized during run).
UILabel (varying height)
UIView (fixed size, width & height)
Вот в чем дело... размер представления в ContainedViewController должен изменяться во время выполнения. Он содержит метку (которая может увеличиваться в зависимости от текста в ней) и статическое представление непосредственно под ней, которое никогда не меняет размер.
Итак, у меня есть ограничение на высоту UILabel, и я меняю его во время выполнения в зависимости от того, насколько большим он должен быть. Между меткой и фиксированным представлением существует вертикальное ограничение, а также все «стандартные» ограничения для основного суперпредставления.
Однако, когда я запускаю, я получаю «невозможно одновременно удовлетворить ограничения», за которым следует журнал ограничений. Среди конфликтующих ограничений — моя новая высота UILabel, а затем высота ContainedView. Я получаю проблему «UIView-Encapsulated-View-Height» с ContainedView.
По-видимому, высота ContainedView определяется высотой ContainerView MainView.
Я хочу, чтобы высота ContainedView менялась при изменении высоты UILabel, а затем распространяла резервную копию контейнеров вплоть до MainView. Но я не могу заставить это работать.
Как я могу изменить размер суперпредставления и представления контейнера при изменении размера метки?