iOS如何实现登陆界面跳转到TabBarController

转载 2016年08月29日 11:00:25

转自:https://segmentfault.com/q/1010000003068206/a-1020000003068383


请教个问题
我想做一个即时通讯的app 其中涉及到登陆的问题。
想要实现先验证是否登陆 若登陆 则跳转到
若未登录 则跳转到登陆界面 在点击登陆后跳转到TabBarController 进行正常使用

现在这个业务逻辑不知道该怎么实现了,烦请各位大大指点一下
以下是我的storyboard (图片是随便拉的 不要吐槽啊) 

查看全部 4 个回答

2

我简单说两句。

第一句:

- (BOOL)application:(UIApplication *)application
        didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
  [self checkUserStatus];

  self.window.rootViewController = self.loginController;
  [self.window makeKeyAndVisible];
}

登录后:

- (void)onLogin
{
    //这句不一定对,大意是这个:
    UIApplication.sharedApplication.delegate.window.rootViewController = MainController.new
}

第二句:

这种在运行时唯一用到的部件我喜欢放到AppDelegate中,索引起来方便,lz可以参考,另外不建议lz完全用StoryBoard来组织关系,不灵活且肯定会坑。

推荐答案

0
采纳

AppDelegate.m

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
    [self.window makeKeyAndVisible];

    //1.取出已存的账号,判断是否过期,是否仍然正确之类
    BOAccount *account = [BOAccountTool readAccount];
    if (account) {
        HomeViewController *homeVC = [[HomeViewController alloc] init];
        self.window.rootViewController = homeVC;
    }else{//2.如果不存在,登陆
        LoginViewController *loginVC = [[LoginViewController alloc] init];
        self.window.rootViewController = loginVC;
    }
    return YES;
}


0

在NeroTabbarController的viewwillAppear里面写是否跳转登录界面的逻辑判断。

0

我首先想到的方法是直接使用模态, 在需要登陆的时候弹出来, 登陆成功后dismiss然后block中刷新根视图控制器上的信息. 只不过以往需要点击登录才会弹出来, 现在的情况是只要判断不在登录状态就直接弹出. 判断方法使用NSUserDefault中的一个跟用户登录状态有关的键值对即可.


相关文章推荐

javaWeb项目用过滤器filter实现登陆成功后才能访问主页面,否则直接输入主页面的地址自动跳转到登陆界面

想用Filter实现一个登陆验证的功能,实现登陆成功后才能访问主页面,否则直接输入主页面的地址会自动跳转到登陆界面 原理很简单,每次登陆成功后,创建一个session域对象,将登陆成功的用户名保存在s...

IOS tabBarController 嵌套navigationController 实现多个界面的跳转

IOS开发中.很多时候都需要在不同的ViewController中来回的跳转,那么如何更加方便的跳转界面呢? 苹果提供了多种跳转方式 下面就说下最常用的tabBarController和navigat...

IOS学习记录之登陆界面各功能的实现

IOS学习记录之登陆界面各功能的实现 说明:本博客主要记录本人在IOS开发学习阶段所做小项目的过程,本文主要讲登陆界面输入框设置,记住密码功能,,与服务器连接,网络简单数据解析等功能。 实物图如下 ...

SpringSecurity2 session超时跳转登陆界面

项目中权限系统使用的是Spring Security2.0,由于对session过期没有过多的支持(Spring Security3.0支持session超时的配置设置),所以只能自己实现。简单的说,...

Spring MVC(二)基于注解的登陆界面获取用户名和密码并跳转其它页面

基于注解实现在登陆界面填写用户名和密码,提交后获取用户名和密码跳转到另一个页面 项目结构图: 一、新建一个JAVA WEB项目,并导入Spring的相关JAR包,并在web.xml中声明拦截器Di...

java swing 登陆界面+跳转界面

java swing+RS232通信持续更新

Cycript实战(微信-登陆界面)-iOS逆向工程

Cycript实战分析(微信-登陆界面)- iOS逆向工程
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)