Ответ 1
Вам нужно добавить элемент панели вкладок в диспетчере просмотра целевого раскадровки.
Я пытаюсь использовать новые ссылки раскадровки на вкладке. Когда я использую ссылку на раскадровку, UITabBarItem (с настроенным изображением и набором текста) ничего не показывает. См. Настройку: раскадровка
Я исправил его на данный момент, установив изображения и заголовок в функции initWithCoder для начального диспетчера представлений в ссылочных раскадках, например:
static NSString *const ContactsViewControllerTabContactImageName = @"tab-contact";
static NSString *const ContactsViewControllerTabContactActiveImageName = @"tab-contact-active";
- (instancetype)initWithCoder:(NSCoder *)aDecoder {
self = [super initWithCoder:aDecoder];
if (self) {
self.title = NSLocalizedString(@"Contacts", nil);
self.tabBarItem.image = [UIImage imageNamed:ContactsViewControllerTabContactImageName];
self.tabBarItem.selectedImage = [UIImage imageNamed:ContactsViewControllerTabContactActiveImageName];
}
return self;
}
Вам нужно добавить элемент панели вкладок в диспетчере просмотра целевого раскадровки.
Этот ответ довольно поздний, но у меня была аналогичная проблема. Это может быть полезно для других, кто позже найдет это сообщение.
При использовании UISplitViewController существует проблема, когда я добавляю элемент в раскадровку, которая может быть решена с помощью обходного пути.
Сценарий:
UITabBarController → StoryboardReference → UISplitViewController
Проблема:
Вы не можете добавить UITabBarItem в UISplitViewController
Решение/Временное решение:
Добавьте UITabBarController в раскадровку UISplitViewControllers и назначьте UISplitViewController как одну из вкладок. UITabBarItem будет добавлен в UISplitViewController. Вы можете удалить ненужный UITabBarController. UITabBarItem будет сохранен.
Обратитесь к следующим ссылкам
вы можете получить ссылку на раскадровку, такую как
UIStoryboard * mainStoryboard = [UIStoryboard storyboardWithName: @ "MainStoryboard" bundle: nil];