我正在制作一个允许用户登录的基本应用。
我想知道在视图控制器之间传递用户数据的一般做法。用户通过身份验证后,通过视图控制器传递数据通常是否可以接受?
例如,用户A已登录并进行身份验证。用户A想要“创建一个事件”,为了能够保存用户正在托管此事件,我必须将用户ID存储在事件中作为主机,我需要访问他的UID。您是否会在登录后保存用户ID并继续将其传递到每个视图?
如果有帮助,我使用Firebase作为我的后端。
答案 0 :(得分:2)
你应该学习一种名为" segues"的东西。它是在ios中视图之间转换的主要机制。
这是一个很好的教程(没有个人关系,顺便说一句) http://makeapppie.com/2014/07/01/swift-swift-using-segues-and-delegates-in-navigation-controllers-part-1-the-template/
没有使用过firebase,但是如果你自己从头开始传递事件数据,你会做4件事。
答案 1 :(得分:0)
是的,最佳做法是根据需要在视图控制器之间传递数据。您通常会使用prepareForSegue
方法来实现此目的。不要陷入使用(滥用,而不是)你的app委托来维持一堆全局状态的常见做法。这是个坏消息。在我看来,它更清晰,更模块化,可以在视图控制器层次结构中传递数据,而不是让视图控制器回到“向上”并抓住他们需要的东西。