Я работаю над приложением для iPhone, которое работает в обеих ориентациях: портретной и альбомной.
Я использую одно представление и табличное представление, встроенное в UINavigationController. Высота этой панели навигации с ее кнопками: 44 пикселей в вертикальной ориентации или 34 пикселей в альбомной ориентации.
В другом представлении я создал 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
Спасибо
Том