美文网首页
iOS 常见的登录界面(不登录看不见登录中心界面)

iOS 常见的登录界面(不登录看不见登录中心界面)

作者: 其实你懂De | 来源:发表于2017-06-30 11:15 被阅读1250次

好久不写了,今天给大家分享一下登录界面,经理说不登录不让进入个人中心,虽然不麻烦,但是感觉坑挺多(可能我是菜鸟的原因)。后台还没做出来,展示的只是本地数据,这些都不重要,主要的效果。。。废话不多说,先看下效果!

5.gif

就是这种效果,可能我是个菜鸟,所以碰到比较坑的东西,不多说,上代码!
我们想到达这个效果,首先判断用户是否登录来拦截点击tabBarItem

//这是UITabBarController的代理方法<UITabBarControllerDelegate>
- (BOOL)tabBarController:(UITabBarController *)tabBarController shouldSelectViewController:(UIViewController *)viewController {
    if (viewController == [tabBarController.viewControllers objectAtIndex:4]) {
          NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
        if ([userDefaults objectForKey:@"phoneNum"] == nil) {
            JYJ_LoginViewController *login = [[JYJ_LoginViewController alloc]init];
            //隐藏tabBar
            login.hidesBottomBarWhenPushed = YES;
            self.tabBar.hidden = YES;
            [(UINavigationController *)tabBarController.selectedViewController pushViewController:login animated:YES];
            self.hidesBottomBarWhenPushed = NO;
            return NO;
            
        }else {
            return YES;
        }
    }else {
        return YES;
    }
}

当我写到点击登录直接要跳转个人中心的时候碰到坑了,怎么回事呢?我们继续

NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
        [userDefaults setObject:self.passwordTextField.text forKey:@"phoneNum"];
        [userDefaults setObject:self.passwordTextField.text forKey:@"password"];
        [userDefaults synchronize];
       MainTabBarController *tab = (MainTabBarController *)[UIApplication sharedApplication].keyWindow.rootViewController;
        [JYJ_AlertView createHUDLabelText:@"登录成功" showView:[UIApplication sharedApplication].keyWindow alertType:0];
        //跳到指定的页面
        tab.selectedIndex = 4;
        

确实这么写也是跳到了指定页面!但是.....新的坑再洗出现 ,看一下效果。

6.gif

很明显大家也看出来怎么回事了,就是说登录页面还会在你选择的VC出现一次,这怎么办呢?想了很长时间终于破解了!!

在我们点击登录的时候最后一句话是这样的

//跳到指定的页面
        tab.selectedIndex = 4;

在这句话后面再加一段代码

[self removeFromParentViewController];  //我的理解是这样的,在进入指定VC后,把父类的VC移除了,所以他不会出现在你选择VC的视图中了。(后加)调试中还是发现了bug,所以干脆就放弃这种效果了。不懂的可以问问我

等待后台准备测试。希望对大家有所帮助。

相关文章

  • iOS 常见的登录界面(不登录看不见登录中心界面)

    好久不写了,今天给大家分享一下登录界面,经理说不登录不让进入个人中心,虽然不麻烦,但是感觉坑挺多(可能我是菜鸟的原...

  • iOS开发 登录界面(逻辑版)

    很多APP都会构建登录界面,我想分享我在搭建登录界面时用到的一些判断。传送门:iOS开发 登录界面(界面版) 账号...

  • iOS开发 登录界面(界面版)

    很多APP都会构建登录界面,我想分享我在搭建登录界面时用到的一些效果。传送门: iOS开发 登录界面(逻辑版) 输...

  • 考勤系统界面设计

    1. 登录界面 我们是参考智慧商超系统的登录界面和登录功能,完成考勤系统的登录界面和登录功能。以下是界面和程序:...

  • wxPython:当密码账号输入正确,登录界面消失并显示主界面

    登录界面弹窗(LoginDialog 类)如下: 登录界面弹窗(LoginDialog 类)代码如下: 登录界面弹...

  • 2018-07-09

    考勤系统的登录与录入 登录界面 1)登录界面代码 录入界面 1)录入界面代码 注册界面 1)注册信息代码 1)数据...

  • 2018-07-09

    登录及注册 登录界面 登录界面代码 管理员界面 管理员界面代码 设置父子窗口 注册界面 注册界面代码 调用参数 查...

  • antd pro v5 登录流程

    涉及的主要文件 未登录时,路由跳转到登录界面 非登陆界面 登录界面

  • 登录界面效果图

    1.1用户登录界面 1.2收银员登录界面 1.3库管员登录界面 2.登录界面实现的功能描述 可实现不同用户类型的自...

  • vue 保存登录信息

    场景 在登录界面中使用账号和密码登录,需要记录用户登录信息,在下次进入登录界面时将上次登录信息反写到界面中。 浏览...

网友评论

      本文标题:iOS 常见的登录界面(不登录看不见登录中心界面)

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