Tag: rootviewcontroller

UIWindow RootViewController更改SWIFT时触发事件/方法

我正在研究一个iOS框架。 我有一个要求,当用户进入或退出一个特定的视图控制器时logging事件。 为此,我想如果以某种方式我可以注册通知来触发一个自定义的方法,当根视图控制器改变。 或者也许使用KVO。 但我不明白如何从实施的angular度来做这件事,因为我找不到任何这样的通知。 任何在这方面的帮助将不胜感激。 谢谢。 请注意,这是一个框架项目。 所以这个框架是build立的,然后添加/embedded到另一个应用程序。 我没有关于该应用程序中的视图控制器的任何信息。 我唯一可以访问的是UIWindow的根视图控制器。 所以,我需要知道什么时候发生变化。

如何仅在用户默认密钥不存在时才显示login屏幕?

我正在尝试开发一个应用程序(仍然在学习),在那里我提供一个login屏幕,它需要一个用户名和密码 – 然后去一个Web服务进行身份validation并返回一个访问令牌。 访问令牌然后存储在userdefaults中,然后呈现一个新的视图控制器,该视图控制器可以访问受保护的数据。 我的问题是,当我closures我的应用程序 – 强制closures,然后再次要求login。 因为我的login视图控制器是初始视图控制器,然后我添加了一个检查,以查看访问令牌是否存在userdefaults中,并呈现新的视图控制器,它允许访问受保护的数据。 现在我的问题是,login屏幕总是在我的安全视图控制器后面打开,所以当从头开始应用程序时,您可以简要地看到login视图控制器,然后呈现受保护的视图控制器。 我将如何理想地处理这个,是这样的情况下,初始视图控制器设置为安全的视图控制器时,用户默认键存在 – 但这样做,我将如何处理注销function,因为我需要'stream行'到根视图控制器和清除用户默认值,但由于login屏幕不是在视图层次结构,那么我不能回到这个? 如果在注销时出现了login视图控制器,那么受保护的视图控制器仍然存在于login视图控制器下。 对不起,如果这是一个有点长啰,但只是想描述我遇到的问题。 谢谢