美文网首页
替换tabbarController的childControll

替换tabbarController的childControll

作者: petter102 | 来源:发表于2016-10-14 14:30 被阅读22次

    我们经常会遇到这样的情况。用户登录的时候显示的个人中心页面,用户没有登录的时候tanbbar的最后一个tab显示的用该是登录页面。

    • 程序刚开始运行的时候绘制tabbar不会有什么问题。但是如果用户中途异地登录我们是如何动态静默的替换掉tabbar的个人中心。改为登录页面呢。其实就是替换tabbar的最后一个child控制器。

    一般用户掉线会收到一个tokenInvalid的通知,再通知的方法中替换掉tabbar的控制器就ok 了。注意tabbar需要重新绘制。还要回复当前的selectIndex

    
     
     - (void)replaceControllers{
    
     NSMutableArray *arr = [[NSMutableArray alloc] initWithArray:[tabBarController viewControllers]];
     NewViewController *nvc = [[NewViewController alloc] init];
     [arr replaceObjectAtIndex:1 withObject:nvc]; 
     [tabBarController setViewControllers:arr]; 
    //重新绘制tabbar
    }
    
    

    相关文章

      网友评论

          本文标题:替换tabbarController的childControll

          本文链接:https://www.haomeiwen.com/subject/ftngyttx.html