Я видел несколько разных сообщений об этом, но я не могу заставить его работать. В основном у меня есть UITableView, и мне нужны кнопки сортировки в верхней части контроллера всплывающего окна. Я следил за этим сообщением: панель инструментов UIPopoverController вверху, чтобы начать работу. В моем контроллере, который является rootViewController для navigationController, я могу создать UISegmentControl и поместить его вверху. Однако это не похоже на изображение, потому что оно не по центру. Может быть, потому что то, как я получаю это во всплывающем окне, находится в viewDidLoad всплывающего окна следующим образом:
UISegmentedControl *topSegmentControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"One", @"Two", @"Three", @"Four", nil]];
topSegmentControl.backgroundColor = [UIColor clearColor];
topSegmentControl.segmentedControlStyle = UISegmentedControlStyleBar;
UIBarButtonItem *toolBarCustom = [[UIBarButtonItem alloc] initWithCustomView:topSegmentControl];
// UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
self.navigationItem.leftBarButtonItem = toolBarCustom;
Кроме того, если я хочу представить данные в нижней части popovercontroller на панели инструментов, я не знаю, где это сделать. Следуя тому же примеру: панель инструментов UIPopoverController вверху, я подумал, что в своем navigationController я должен что-то сделать нравится:
UISegmentedControl *topSegmentControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects:@"BottomOne", @"BottomTwo", @"BottomThree", nil]];
// topSegmentControl.backgroundColor = [UIColor clearColor];
topSegmentControl.segmentedControlStyle = UISegmentedControlStyleBar;
UIBarButtonItem *toolBarCustom = [[UIBarButtonItem alloc] initWithCustomView:topSegmentControl];
UIBarButtonItem *spaceItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil];
NSArray *array = [NSArray arrayWithObjects:spaceItem, toolBarCustom, spaceItem, nil];
[navController setToolbarItems:toolBarCustom];
[navController setToolbarHidden:NO];
Когда я пробую это, я вижу панель инструментов, в которой ничего нет, она имеет более светлый оттенок, чем остальная часть всплывающего окна.
Подводя итог, я не уверен, где вы должны инициализировать элементы панели инструментов или кнопки для всплывающего окна с навигационным контроллером, как в примере. Я также не уверен, как центрировать данные. Спасибо.