UIView Макет и приложение Frame - PullRequest
2 голосов
/ 27 июля 2010

У меня странное поведение с приложением для iPad. Я обычно добавляю представление в свой viewController следующим образом:

CGRect bounds = [[UIScreen mainScreen] applicationFrame];
// Add Basic View
UIView *myView = [[UIView alloc] initWithFrame:bounds];
myView.backgroundColor = [UIColor blackColor];
self.view = myView;
[myView release];

На iPhone это всегда работает как шарм. Однако в моем приложении для iPad я добавляю панель инструментов к этому self.view как подпредставление с прямоугольником (0, 0, self.view.frame.width, 100). Иногда это работает хорошо, и панель инструментов отображается прямо под строкой состояния, но в определенных условиях (например, когда iPad лежит на столе и ориентация интерфейса в вертикальной ориентации), моя панель инструментов частично скользит ниже строки состояния. Тем не менее, как только я поворачиваю устройство, все снова в порядке, и панель инструментов выравнивается по строке состояния.

Я пробовал некоторые обходные пути с добавлением значений в несколько точек к свойству origin.y панели инструментов, но когда я делаю это, панель инструментов получает смещение в строке состояния после поворота устройства. Я действительно смущен этим, кто-нибудь еще когда-либо испытывал эту проблему? Если да, то как ты это исправил?

Большое спасибо!

...