iPhone – Facebook登录后,UISwitch的状态未设置为“On” – (vo
发布时间:2020-12-14 17:21:35 所属栏目:百科 来源:网络整理
导读:我已经实现了Facebook登录并检查了我的访问令牌的状态 -(void)fbDidLogin 现在,我有一个UITableView,我有一个切换按钮作为UISwitch,如果我有一个访问令牌,它会打开.问题是,当我获得访问令牌时 -(void)fbDidLogin 方法被调用.在这里,我通过调用设置切换按钮的
我已经实现了Facebook登录并检查了我的访问令牌的状态
-(void)fbDidLogin 现在,我有一个UITableView,我有一个切换按钮作为UISwitch,如果我有一个访问令牌,它会打开.问题是,当我获得访问令牌时 -(void)fbDidLogin 方法被调用.在这里,我通过调用设置切换按钮的开关 [self.switch setOn:YES animated:YES]; 但它没有发生.当我再次打开该页面时,它显示正确的状态,但不是当我在fbDidLogin中设置它时.有没有猜到为什么会这样? 对于facebook身份验证,它会超出应用程序并返回,也许这就是为什么会发生这种情况?但是我从fbDidLogin调用了一个web服务并且工作正常. 代码很简单 - (void)fbDidLogin { [self.switch setOn:YES animated:YES]; } 解决方法
你获得fb的访问令牌添加帖子通知
[[NSNotificationCenter defaultCenter] postNotificationName:@“fbDidLogin”对象:nil]; 现在初始fb登录的方法是 -(void)fbLogin { [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(fbDidLogin) name:@"fbDidLogin" object:nil]; // some logic for intial fb login page } 同样在fbDidLogin方法中添加此项 - (void)fbDidLogin { [[NSNotificationCenter defaultCenter]removeObserver:self name:@"fbDidLogin" object:nil]; [self.switch setOn:YES animated:YES]; } 一旦收到访问令牌,就会调用fbDIdLogin 如果访问令牌为零,则可以对fb登录失败进行类似的处理. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |