質問

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

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

他のヒント

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

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;
    }
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top