我已经使用情节提要创建了一个应用程序。我很少有带导航控制器的视图控制器。现在,在它们的最后一个中,我有一个按钮,用于打开instagram登录视图控制器(我正在使用此库:https : //github.com/OceanLabs/InstagramImagePicker-iOS)。
这是一段代码:
let loginVC = OLInstagramLoginWebViewController()
loginVC.redirectURI = GlobalConstants.instagramRedirectId
self.instagramLoginViewController = loginVC
self.instagramLoginViewController!.delegate = self
self.navigationController!.pushViewController(loginVC, animated: true)
然后显示登录视图控制器,我可以输入用户名/密码,最后它调用该用户已登录的委托,在这里执行此操作:
if(self.instagramLoginViewController != nil){
self.navigationController!.popViewControllerAnimated(false)
self.instagramLoginViewController = nil
}
它实际上会弹出登录视图控制器,但是从现在开始发生了一些奇怪的事情。当以前的视图控制器显示时(是的,我在情节提要板上也有它),后退按钮无法正常工作。在导航栏上,一切都在变化,但是直到到达第一个视图控制器之前,屏幕的其余部分都没有变化。我已经从该instagram库中检查了登录视图控制器中的代码,并删除了该行:
[self.navigationItem setHidesBackButton:YES];
因此,后退按钮也出现在登录视图控制器中,当我单击它时,一切正常。所以我的结论是popViewControllerAnimated是其中一个,从而导致了问题。
我该如何解决?
该死,我不知道为什么,但是我变了
self.navigationController!.popViewControllerAnimated(false)
到
self.navigationController!.popViewControllerAnimated(true)
现在它可以工作了..奇怪..我想不用动画就可以做到,但是很好..
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句