У меня есть два приложения, из которых заставляют пользователя использовать iPhone в ландшафтном режиме, чтобы иметь более широкий экран, а не более высокий.Сложность с приложениями с принудительной ориентацией на пейзаж
Одна из вещей, которые я обнаружил, заключается в том, что мой первый вид будет выглядеть отлично, но все остальные виды представят свои подвид (UIButtons, UIPicker, UIViews), сжатые с одной стороны или обрезанные (в зависимости от того, установлены ли элементы перемещать, изменять размер или оставаться в том же положении, что и размер представления). Все мои взгляды разработаны в IB в ландшафтной ориентации. Мой основной UIWindow, и все, что я могу придумать, было изложено в альбомной ориентации. Даже мой файл plist имеет флаг UIInterfaceOrientationLandscapeRight.
Теперь, если я загружаю все свои представления одновременно с моим контроллером rootview, тогда у меня нет проблем. Но если у меня есть просмотры, загруженные позже, их обрезают или сжимают.
Единственный способ обойти эту проблему, чтобы добавить следующую строку в моем коде, который переворачивает в новом виде:
[coming.view setFrame:CGRectMake(0, 0, 480, 300)];
Каждый знает, почему я должен это делать? Это просто, что iPhone предполагает, что загруженные представления 300x480, если к ним не применяется преобразование?
Спасибо.
пс. Это то, что вид выглядит, как если бы я не называю setFrame, как описано выше:
alt text http://files.me.com/mahboud/ljhvun
Все viewcontrollers, которые загружаются после первого будет их экран так же выдавливается вниз. По какой-то причине первый диспетчер представлений не имеет этой проблемы.
Я могу подтвердить, что это все еще проблема с iPhone OS 3.1.3. Поскольку у меня есть два случая бесплатной поддержки, включенные в членство в ADC, я подал заявку и сообщаю вам, когда у меня есть новости. –