2014-09-19 2 views
0

Я пишу программу с UIStoryboard (именуемой MainStoryboard) и использую UITabBarController. В настройках моего приложения я выбираю MainStoryboard в качестве основного интерфейса.UIStoryboard change UITabBar Text программно

В моей AppDelegate,

1) Как я могу получить доступ к моему MainStoryboard? (В настоящее время, мне не нужно, чтобы установить, что раскадровку как мой взгляд, корень контроллер. Я уже выбрать MainStoryboard в качестве основного интерфейса. Теперь мне нужно получить доступ к MainStoryboard)

2) Как я могу изменить панель вкладок текст кнопки?

enter image description here

+1

Вы смотрели на ссылках UIStoryboard класса для подходящего метода? – rdelmar

+0

№. У меня нет. Можете ли вы мне помочь? –

ответ

0

Вы можете изменить панель вкладок элементы только после того, как вы создали экземпляр контроллера вид. Так что в вашем AppDelegate сделать следующее:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    UITabBarController *tbc = (UITabBarController *)self.window.rootViewController; 
    NSArray<UIViewController *> *vca = tbc.viewControllers; 

    [vca enumerateObjectsUsingBlock:^(UIViewController * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) { 
     UITabBarItem *tbi = obj.tabBarItem; 
     tbi.title = @"MY_NEW_TITLE"; 
    }]; 

    // By the way your storyboard is here: 
    UIStoryboard *sb = tbc.storyboard; 

    return YES; 
}