iOS 开发中点击tabBar弹出登录界面

以前我实现弹出登录界面是在对应的controller中的viewwillappear里实现,这样做的缺点是,点击要弹出登录界面的tabbar里的contrllor时会先显示对应界面再弹出登录。需求希望在点击切换tabbar的item时就弹出登录,不进入对应界面。

实现代码如下:

需要实现tabbarController对应的代理方法,遵循代理UITabBarControllerDelegate!!!

- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController {

    

    int utype =  [[MXKit shareMXKit]getUserInfo];

    

    //判断用户是否登陆

    if (utype== 1) {

        //这里拿到你想要的tabBarItem,这里的方法有很多,还有通过tag值,这里看你的需要了

        if ([viewController.tabBarItem.title isEqualToString:@"我的"]||[viewController.tabBarItem.title isEqualToString:@"朋友圈"]||[viewController.tabBarItem.title isEqualToString:@"交易发布"]||[viewController.tabBarItem.title isEqualToString:@"会议"]) {

            MXRLCLoginViewController *vc = [MXRLCLoginViewController new];

            [self.window.rootViewController presentViewController:vc animated:YES completion:nil];

            //这里的NO是关键,如果是这个tabBarItem,就不要让他点击进去

            return NO;

        }

    }

    //当然其余的还是要点击进去的

    return YES;

}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值