在 iOS 中,可以使用`UINavigationController`来实现多层 push 和返回 2 层的功能。\n\n首先,在需要进行 push 操作的地方,创建一个新的 ViewController 实例,然后通过`pushViewController:animated:`方法将其推入导航栈中。例如:\n\nobject-c\n// 创建要推入的 ViewController 实例\nUIViewController *viewController = [[UIViewController alloc] init];\n\n// 将 viewController 推入导航栈中\n[self.navigationController pushViewController:viewController animated:YES];\n\n\n当需要返回 2 层时,可以使用`popToViewController:animated:`方法来返回指定的 ViewController。例如,假设要返回到导航栈中的第一个 ViewController:\n\nobject-c\n// 获取导航栈中的第一个 ViewController\nUIViewController *destinationViewController = self.navigationController.viewControllers[0];\n\n// 返回到指定的 ViewController\n[self.navigationController popToViewController:destinationViewController animated:YES];\n\n\n如果要返回到倒数第二层,可以通过`viewControllers`属性获取导航栈中的倒数第二个 ViewController,然后再进行返回操作。\n\nobject-c\n// 获取导航栈中的倒数第二个 ViewController\nNSInteger index = self.navigationController.viewControllers.count - 2;\nUIViewController *destinationViewController = self.navigationController.viewControllers[index];\n\n// 返回到倒数第二个 ViewController\n[self.navigationController popToViewController:destinationViewController animated:YES];\n\n\n这样就可以实现在 iOS 中进行多层 push 和返回 2 层的功能了。

iOS Object-C 导航控制器:多层 Push 和返回两层

原文地址: https://www.cveoy.top/t/topic/qorD 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录