У меня есть пользовательский UIView, который имеет выделенную, вручную установленную рамку для портретной и альбомной ориентации, потому что autoresizingMasks просто не работает в моем случае.
Я установил этот кадр в:
- (void)viewWillAppear:(BOOL)animated
И все работает как положено.
Моя проблема сейчас в том, что мой UIView также имеет подпредставления, которые также имеют специальную позицию для портрета / пейзажа.
Я размещаю эти подпредставления в:
- (void)layoutSubviews
Если я теперь оставлю свой viewController в например, книжной ориентации, поверну в альбомную ориентацию на другом viewController и затем вернусь к этому viewController. Я вижу, что мой вид был изменен правильно, но подпредставления моего вида, которые получить позиционирование в layoutSubviews еще не репозиционированы, но они изменяются с помощью анимации после того, как представление уже появилось.
Я ничего не делаю в viewDidAppear, и я уже пытался позвонить
- (void)layoutIfNeeded
А также:
- (void)setNeedsLayout
В viewWillAppear, но, похоже, это ничего не меняет.
Есть идеи, что я делаю не так?
Спасибо.