iOS 7 - изменение размера UITabbar при вращении

Когда я переворачиваю устройство из книжной в альбомную, ширина панели вкладок не увеличивается, а с правой стороны отображается пробел (где вы видите текст «местоположение»).

Вертикальная ориентация

Горизонтальная ориентация

Эта проблема возникла после установки iOS 7 и отсутствовала в iOS 6. Она возникает как на симуляторе, так и на реальном устройстве.

Я заметил, что когда я начинаю в ландшафтном режиме, я могу без проблем переключаться между ландшафтом и портретом.


person Nigel    schedule 14.09.2013    source источник
comment
Я использую с помощью IB / Storyboards, и автоматический макет проверен.   -  person Nigel    schedule 14.09.2013


Ответы (2)


Я уверен, что это связано с вашим автоматическим макетом в Interface Builder. ЕСЛИ вы создаете свое представление с помощью IB, все, что вам нужно сделать, это щелкнуть значок вашего контроллера представления, а затем выбрать все объекты (команда + a), а затем просто перейти к значку, который выглядит следующим образом. введите здесь описание изображения

Нажмите на тот, который показывает мяч, и в нем есть опция «Очистить ограничения в контейнере». Нажмите на эту опцию, и после того, как вы это сделаете, должна быть еще одна опция с надписью «Добавить отсутствующие ограничения в контейнер». Это добавит параметры по умолчанию для размера в зависимости от ваших элементов в вашем контроллере представления.

Затем просто запустите устройство, и я уверен, что оно исправлено.

Я надеюсь, это поможет вам!

person user2277872    schedule 14.09.2013
comment
Я попробовал ваше предложение, но у меня все еще есть та же проблема. Ограничения, безусловно, вызвали проблемы в других представлениях, и на это стоило обратить внимание. - person Nigel; 14.09.2013
comment
попробуйте нажать на панель вкладок и найти ограничения. Затем посмотрите, есть ли что-то, связанное с Bottom Space To:, и установите для него superview, посмотрите, поможет ли это. - person user2277872; 14.09.2013

Я создал новый тестовый проект в XCode5, содержащий только контроллер панели вкладок с двумя вкладками. Автоповорот и изменение размера работали нормально, поэтому я знаю, что это должна быть настройка в моем старом проекте, изначально созданном в Xcode 4.

Затем я сравнил каждую настройку в IB с моим исходным проектом. Я замечаю, что флажок «Autoresize Subviews» не был установлен в исходном проекте и был отмечен в новом. После изменения этого изменения размер снова работает стабильно.

https://www.dropbox.com/s/th0tr812w1i3zlg/autoresizeSubviews.tiff

Странно, что в iOS 6.1/XCode4 это не имело значения!

person Nigel    schedule 15.09.2013