pop回指定控制器

//OC
NSArray *array = [NSMutableArray new]; array = self.navigationController.viewControllers; //1、返回指定index的控制器 UIViewController *viewC = [array objectAtIndex:0]; [self.navigationController popToViewController:viewC animated:YES]; //2、 UIViewController *viewc = [UIViewController new]; for (viewc in array) { if ([viewc isKindOfClass:[指定控制器 class]]) { [self.navigationController popToViewController:viewcanimated:YES]; } }

//3、

 [vcArr removeObject:strongSelf];

  [self.navigationController setViewControllers:vcArr animated:NO];

 

 2、Swift

//返回指定界面
let marr = NSMutableArray.init(array:(self.navigationController?.viewControllers)!)
for i in 0..<marr.count {
     let vc = marr[i] as! UIViewController
     let vcName = type(of: vc)
     let PurposeVCName = type(of: 指定控制器名称())
     if "\(PurposeVCName)" == "\(vcName)" {
          self.navigationController?.popToViewController(vc, animated: true)
     }
}
let marr = NSMutableArray.init(array:(self.navigationController?.viewControllers)!)
for i in 0..<marr.count {
    let vc = marr[i] as! UIViewController
    let vcName = type(of: vc)
    let PurposeName = type(of: 指定控制器的后一个控制器名称())
    if "\(PurposeName)" == "\(vcName)" {
       let popVC = self.navigationController?.viewControllers[i-1]
       self.navigationController?.popToViewController(popVC!, animated: true)
    }
}
//将本控制器从导航栏控制器数组中移除,从而返回到跳转到本控制器的控制器
let marr = NSMutableArray.init(array(self.navigationController?.viewControllers)!) let removeArr = NSMutableArray() for i in 0..<marr.count { let vc = marr[i] as! UIViewController let vcName = type(of: vc) let selfName = type(of: self) if "\(selfName)" == "\(vcName)" { removeArr.add(vc) } } if removeArr.count > 0 { for i in 0..<removeArr.count { let vc = removeArr[i] as! UIViewController marr.remove(vc) } } let array : NSArray = marr self.navigationController?.viewControllers = array as! [UIViewController]

 

转载于:https://www.cnblogs.com/HMJ-29/p/6768574.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值