我知道这是一个初学者问题,但我无法找到解决方案。 我有一个带故事板的应用程序。这是一个选项卡式视图应用程序,每个选项卡都指向导航视图控制器,而不是根视图控制器。 在导航视图控制器中,我有一个登录按钮。按下它会向应用代表发送一条消息,以处理与Facebook打开会话的问题。 我希望在facebook打开的会话之后,设置按钮的标题以注销,因为如果我再次按下它会怎么做。 这是所有可视化编程而不是硬编码的,因此缺少大部分代码。 现在我知道只有app委托的一个实例,所以从视图中很容易访问它,但我如何从应用委托到视图的活动会话? 我尝试将它放在viewDidLoad方法中,但显然来自Facebook API的回调没有重新加载视图(同样也不应该再没有系统地再次使用系统)
任何想法如何让应用委托代表发送信息到视图的活动会话?
答案 0 :(得分:1)
您可以通过以下几种方式执行此操作:
viewDidLoad
方法上执行某些操作,以便如果用户具有先前登录的会话,则控制器会使自己进入正确的初始状态。有关通知编程的详细信息,请查看https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Notifications/Introduction/introNotifications.html#//apple_ref/doc/uid/10000043i。viewWillAppear:animated
中实现代码,以便在用户登录后显示视图时,控制器会查询应用委托以确定您的会话状态。我怀疑这是你要通过将代码放在viewDidLoad
中尝试做的,但视图已经加载,因此在登录后不会调用此代码。在视图出现之前调用viewWillAppear:animated
。