tabBarController unLoad itself after call modalVie

2019-03-04 05:23发布

I have tabBarController with 6 views. As default tabBarController load first view, I need to load view #6 at my application start, so in my tabBarController I add to viewWillAppear [self.tabBarController setSelectedIndex:6];, ok. In my view #3 a have 2 modal views witch I create in storyboard. When I tap a button I load my modal view, and when a close it [self dismissModalViewControllerAnimated:YES]; (I was in view #3) I see view #6, but I need to come back to view #3, so if I understand right when I call my modalView it unload my tabBarController and when I close it load tabBarController again with view #6, but i need to see my view #6 where i call my modalView, how can I fix it?

P.S. I hope you understand my English

3条回答
smile是对你的礼貌
2楼-- · 2019-03-04 05:46

Do something like this in the viewDidAppear method of your tab bar controller, so it only sets the selectedIndex when the app starts up:

-(void)viewDidAppear:(BOOL)animated {
    [super viewDidAppear:animated];
    static BOOL isFirst = YES;
    if (isFirst) {
        [self setSelectedIndex:6];
        isFirst = NO;
    }
}
查看更多
做自己的国王
3楼-- · 2019-03-04 06:05

It looks like You added [self.tabBarController setSelectedIndex:6]; to viewWillAppear instead of viewDidLoad. There is no viewWillLoad there.

查看更多
我想做一个坏孩纸
4楼-- · 2019-03-04 06:07

I change order of items in my tabBarController in storyboard, change numbers of views in code and everything works. Thanks to all.

查看更多
登录 后发表回答