美文网首页
通过判断是否登录跳转不同的控制器

通过判断是否登录跳转不同的控制器

作者: 为什么划船不靠桨 | 来源:发表于2017-04-23 17:25 被阅读0次

    在有些项目里面点击TabbarItem的个人主页界面时需要判断用户是否登陆,如果登陆则进入个人界面,未登录就跳转到登陆界面.那么该怎么用代码去实现呢?

      1. 自定义TabbarViewController,并加入需要是子控制器.
    • 2.TabbarViewController需要遵守UITabBarControllerDelegate
    • 3.在视图完成加载的时候设置代理self.delegate = self;
    • 3.在代理方法中对tabBarItem的title进行判断,具体如下:
    -(BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController{
    
        //如果用户ID存在的话,说明已登陆
        if ([[[NSUserDefaults standardUserDefaults] objectForKey:@"LOGINSTATE"] isEqualToString:@"true"]) {
            MyViewController *my = [[MyViewController alloc]init];
        [self addChildVC:my title:@"会员中心" image:@"我的未选中" selectedImage:@"我的选中"];
            return YES;
        }else{
            //跳到登录页面
            LoginViewController *login = [[LoginViewController alloc] init];
            //隐藏tabbar
            login.hidesBottomBarWhenPushed = YES;
            [((UINavigationController *)tabBarController.selectedViewController) pushViewController:login animated:YES];
            return NO;
        }
    
        }else
    
            return YES;
    }
    

    相关文章

      网友评论

          本文标题:通过判断是否登录跳转不同的控制器

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