2013-07-30 5 views
0

Мой главный viewController имеет 4 UIImageViews, которые занимают весь экран. Каждый из них содержит изображение и устанавливается в UIViewContentModeScaleAspectFit. Каждая функция autoresizingMask имеет значение UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight.UIImageView получает изменение размера при использовании presentViewController сверху

У меня есть несколько модальных экранов, которые представлены через главный viewController [self presentViewController: _modal animated: YES complete: nil];

И вот где он сходит с ума.

Это прекрасно работает для нескольких модальных экранов ... но не для 2 других. Когда я представляю любой из этих оскорбительных модальных viewControllers, UIImageViews ниже меняют размер кадра до фактического размера изображения, которое они содержат ... и я понятия не имею, почему. Это происходит на iPhone и iPad.

Что может заставить UIImageView самостоятельно изменить его рамки/рамки?

ответ

0

Оказывается, что даже если я не использую ограничения, просто положить эту строку:

_imageView.translatesAutoresizingMaskIntoConstraints = NO; 

в моем коде установки вынуждает подвиды быть изменены при использовании некоторых модальных контроллеров просмотра.

Да, я тоже смущен.

Я надеюсь, что это поможет кому-то там.

+0

iOS 6 всегда использует ограничения под капотом (я думаю). Отключение автоматической компоновки в вашем раскадровке или xib не изменяет этого, поэтому отключение трансляции авторезистентности маски на основе просмотра все равно переключает ее на использование автоматического макета. –

Смежные вопросы