【发布时间】:2015-04-04 11:47:11
【问题描述】:
在我的项目中,我使用一些代码来处理后退按钮,如下所示。
NSMutableArray *VCs = [NSMutableArray arrayWithArray: self.navigationController.viewControllers];
if ([[VCs objectAtIndex:[VCs count] - 2] isKindOfClass:[LoginViewController class]])
{
[VCs removeObjectAtIndex:[VCs count] - 2];
[VCs removeObjectAtIndex:[VCs count] - 2];
}
[self.navigationController setViewControllers: VCs];
在 iOS 7 中,我得到了想要的结果。但是对于 iOS 8.2 版本,可变数组 VCs 中的值只是堆栈中的当前或 topViewController。
我想从堆栈中删除登录屏幕视图控制器,以便在单击后退按钮时不会返回登录屏幕。我仅在 iOS 8.2 中遇到此问题(可能在 iOS 8 及更高版本中)。可能是什么问题?请帮忙。
【问题讨论】:
-
能否请您 NSLog self.navigationController.viewControllers 并更新问题。它将帮助我们以某种方式识别问题。
-
感谢 jassi 抽出宝贵时间...viewcontroller 数组的内容只有在 os 为 8.2 时才是当前 viewcontroller...如果是 7.2,则所有 viewcontroller 都在堆栈中.我目前没有设备。对不起...知道为什么会这样吗?
-
你解决过这个问题吗?
标签: ios objective-c iphone back ios8.2