美文网首页
iOS中判断是从哪个控制器push进来的,返回指定控制器

iOS中判断是从哪个控制器push进来的,返回指定控制器

作者: smile刺客 | 来源:发表于2017-05-02 10:57 被阅读0次

如果是一层层push进来的,可以使用下面方法进行返回:

// 1

// push将控制器压到栈中,栈是先进后出;pop是出栈:即将控制器从栈中取出。

NSArray*arrController =self.navigationController.viewControllers;

NSIntegerVcCount = arrController.count;

//最后一个vc是自己,(-2)是倒数第二个是上一个控制器。

UIViewController*lastVC = arrController[VcCount - 3];

// 返回到倒数第三个控制器

if([lastVCisKindOfClass:[XZViewControllerclass]]) {

[self.navigationControllerpopToViewController:lastVCanimated:YES];

}

// 2

[self.navigationController popToViewController:[self.navigationController.viewControllers objectAtIndex:0] animated:YES];

// 3

返回到指定的控制器:遍历一遍子控制器,判断一下哪个是要返回的控制器,进行返回

for(UIViewController*controllerinself.navigationController.viewControllers) {

if([controllerisKindOfClass:[XZViewControllerclass]]) {

[self.navigationControllerpopToViewController:controlleranimated:YES];

}

}

相关文章

网友评论

      本文标题:iOS中判断是从哪个控制器push进来的,返回指定控制器

      本文链接:https://www.haomeiwen.com/subject/fpdctxtx.html