подробнее UIViewController в UISplitViewController неправильно изменяется при повороте устройства - PullRequest
0 голосов
/ 14 ноября 2010

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

Я изменил backgroundColor вида на желтый. Когда он вращается, я вижу желтый куб и над ним около 300 точек, которые серого цвета. Контроллер представления не изменяет размер своего представления правильно.

Я установил все маски авторазмера:

detailViewController.view.autoresizingMask = UIViewAutoresizingF flexLeftMargin | UIViewAutoresizingF flexRightMargin | UIViewAutoresizingF flexTopMargin | UIViewAutoresizingF flexBottomMargin | UIViewAutoresizingF flexHeight | UIViewAutoresizingFlexibleWidth;

не помогает. Изображение остается квадратичным, как в ландшафтном режиме, даже при повороте на портрет. Тогда это должно быть намного выше.

Что еще может вызвать это плохое поведение? Я посмотрел на все эти настройки на примере яблока в Интерфейсном Разработчике, и мое программное создание воссоздает это, насколько я могу судить. Что-то должно быть не хватает. Вероятно, какая-то маска авторазмера отсутствует где-то.

1 Ответ

1 голос
/ 28 декабря 2010

Я часто вижу вид квадратичных деталей в симуляторе (4.1), даже в примере Apple (http://developer.apple.com/library/ios/#samplecode/MultipleDetailViews/Introduction/Intro.html#//apple_ref/doc/uid/DTS40009775), но он не воспроизводится на 100%. Переключение ориентации вперед и назад, и все в порядке. Я никогда не виделпроблема на реальном устройстве.

Еще одно предположение: все ли ваши контролы представления (само разделенное представление, корневой контроллер и все подробные представления) переопределяют mustAutoRotateToOrientation и возвращают YES там?

...