iOS开发笔记-19: navigationController 去除中间Controller

//将自己从navigationController中移除的方法

//本来我是用这个方法的,但是被移除的导航栏被之前的控制器继承过去了
[self removeFromParentViewController];

//亲测可行的办法:
-(void)removeSelf {
    NSMutableArray *marr = [[NSMutableArray alloc]initWithArray:self.navigationController.viewControllers];
    for (UIViewController *vc in marr) {
        if (vc == self) {
            [marr removeObject:vc];
            break;//break一定要加,不加有时候有bug
        }
    }
    self.navigationController.viewControllers = marr;
}

你可能感兴趣的:(iOS开发笔记-19: navigationController 去除中间Controller)