我的导航 Controller 有问题。我的导航 Controller 创建堆栈的流程如下
情况1:-A--->B--->C
情况2:- D--->B--->C
这是调用 navigationController 的实际流程,其中 A、B、C、D 是不同的堆栈。 我通过这种方法调用这些堆栈:
B *b=[[B alloc]init]
[[self navigationController]pushViewController:b animated:YES];
问题
当我按 A-->B-->C
顺序移动,然后导航回 C-->B-->A
这很好用..现在,如果我再次移动到 D-->B
但它会将我带到 C
和
错误嵌套推送动画可能会导致导航损坏
为什么会出现这个错误??
注意..A 和 D
在同一个堆栈上。
最佳答案
试试这个...希望它能帮助你...
NSArray *viewContrlls=[[self navigationController] viewControllers];
for( int i=0;i<[ viewContrlls count];i++)
{
id obj=[viewContrlls objectAtIndex:i];
if([obj isKindOfClass:[Yourclassname class]])
{
[[self navigationController] popToViewController:obj animated:YES];
return;
}
}
Yourclassname is your class which you want to push or pop and nothing to change
关于iphone - 嵌套 UINavigationController 流已损坏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14272747/