Я работаю над приложением для iPhone, которое работает в обеих ориентациях: книжной и альбомной.
Я использую для одного представления и табличного представления, встроенного в UINavigationController. Высота этой навигационной панели с ее кнопками: 44px Portrait или 34px landscape.
В другом представлении я создал UINavigationBar самостоятельно, и я могу установить кадр для правильного размера, но встроенный UINavigationItem с UIBarButtonItem не уменьшается. Таким образом, для 34 пикселей в ландшафтном режиме эта кнопка имеет большой размер и перекрывает панель навигации по высоте.
Самое смешное, что это работало с идентичным кодом в других приложениях ... понятия не имею, чего здесь нет.
Есть ли способ настроить высоту / положение UIBarButtonItem?
Вот фрагмент кода:
navBar = [[UINavigationBar alloc] initWithFrame: CGRectMake(0.0f, 0.0f, 320.0f, 34.0f)];
[navBar setBarStyle: UIBarStyleBlackOpaque];
[self addSubview: navBar];
barButton = [[UIBarButtonItem alloc] initWithTitle: NSLocalizedString(@"flip", @"flip") style:UIBarButtonItemStylePlain target:self action:@selector(flip)];
item = [[UINavigationItem alloc] initWithTitle: NSLocalizedString(@"Translation", @"Translation Tab Bar Title")];
[item setRightBarButtonItem: barButton];
[navBar pushNavigationItem:item animated:NO];
альтернативный текст http://labs.kiesl.eu/images/navbar.png
Спасибо
Tom