2015-05-13 2 views
1

Я работал, чтобы связать несколько раскадровки с одним UITabBarController. У меня есть работа, где я могу открыть новую раскадровку и представить начальный UIViewController, только UITabBar исчезает, когда он открывает новую раскадровку.iOS/xcode - Как я могу открыть новую раскадровку из UITabBarController и сохранить UITabBar от исчезновения?

Вот код, я использую, чтобы перейти на новую раскадровку:

-(BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController 
{ 
if ([viewController isMemberOfClass:[ProfileRedirectViewController class]]) 
    { 
     UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Profile" bundle:nil]; 
     UIViewController *vc = [sb instantiateViewControllerWithIdentifier:@"ProfileTableViewController"]; 


     [self.view.window.rootViewController presentViewController:vc animated:YES completion:nil]; 
     //[self.navigationController pushViewController:vc animated:false]; 

     return NO; 
    } 
    return YES; 
} 

Я играл вокруг с версией navigationController, но это не будет просто ничего не делать, и в результате в мертвых мышах и без ошибок в журнале. Я искал ответ на это немного, и, возможно, я пошел по неверным путям. Я новичок в xcode, поэтому я вполне мог пропустить что-то очевидное или использовать поисковые запросы, чтобы найти помощь.

UITabBar отлично работает, когда мы переходим к любому из других видов в основной раскадровке, только когда я перехожу к следующей раскадровке, которую мы теряем.

Вся помощь очень ценится!

ответ

0

Вы сообщаете окну просмотра, чтобы загрузить новый корень, но то, что вы хотите сделать, - это открыть UIBarTab другую раскадровку. Взгляните на его сообщение есть очень хороший подробный ответ: Proper Way to Open a New Storyboard through UITabBarController

+0

Это сработало отлично! Благодаря тонну! – Dutch

+0

Не стесняйтесь принять ответ в этом случае. ;-) – Mika

Смежные вопросы