В моем текущем проекте у меня есть приложение, основанное на контроллере навигации. Для некоторых видов в приложении требуется панель инструментов в нижней части представления. Я создаю панель инструментов программно с помощью следующих (Выдержки из viewDidLoad в контроллере представления таблицы):Странное поведение с UIToolbar в приложении iOS
UIBarButtonItem *reloadButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(refreshList)];
[reloadButton setTitle:@"Refresh"];
[reloadButton setTintColor:[UIColor whiteColor]];
self.navigationController.toolbar.barStyle = UIBarStyleBlackTranslucent;
[self.navigationController.toolbar sizeToFit];
CGFloat toolbarHeight = [self.navigationController.toolbar frame].size.height;
[self.navigationController.toolbar setFrame:CGRectMake(CGRectGetMinX(self.view.bounds),
438,
CGRectGetWidth(self.view.bounds),
toolbarHeight)];
NSArray *toolbarItems = [[NSArray alloc] initWithObjects:reloadButton, nil];
[self setToolbarItems:toolbarItems];
[self.navigationController setToolbarHidden:NO];
Это хорошо работает в большинстве взглядов. Однако теперь я включаю его в другое представление, используя идентичный код. В этом контроллере панель инструментов отображается примерно на дюйм выше дна представления - она не привязывается к нижней части представления, как в других диспетчерах представления. Когда я перейду к представлению проблемы, другие панели инструментов в другом представлении начнут проявлять одинаковое поведение. Это происходит только в симуляторе, а не на моем физическом устройстве. Однако в настоящее время у меня есть только iPhone 4 в качестве моего физического устройства. Это ошибка в симуляторе или указание проблемы где-то? Благодаря!
Может быть, этот конкретный контроллер просмотра скрывает строку состояния? – Macondo2Seattle