gpt4 book ai didi

iphone - 从另一个 modalviewcontroller 中解除 modalviewcontroller

转载 作者:行者123 更新时间:2023-12-03 19:27:10 26 4
gpt4 key购买 nike

我正在展示另一个模态视图 Controller 的模态视图 Controller 。当我关闭第二个模态视图 Controller 时,第一个和第二个模态视图 Controller 都应该被关闭。我尝试访问第一个模态视图,例如

[self.view.superview dismissmodalviewcontroller];  

但显示错误。从第二个 modalViewController 获取对第一个 modalViewController 的引用并从中调用解雇方法的正确方法是什么?

最佳答案

就像这样。

A 呈现 B。这里,A 是 B 的父级(这里,A.modalViewController 将是 B,B.parentViewController 将是 A)

B 呈现 C。这里,B 是 C 的父级(这里,B.modalViewController 将是 C,C.parentViewController 将是 B)

根据苹果指南,父 Controller 有责任解雇其子 Controller 。

所以如果你想关闭 Controller C,你可以在C.parentViewController处调用dismissModalViewController。由于 C 的父级是 B,因此 B 正在消除它所呈现的模态(子) Controller 。

但是你甚至想解雇B。B的 parent 有责任解雇B。所以你需要说[B.parentViewController解雇ModalViewControllerAnimated: YES];

因此,您需要从 C 中获取 B 作为 C.parentViewController (不要忘记在这里进行类型转换)。然后你说 [B.parentViewController DismissModalViewControllerAnimated: YES];

关于iphone - 从另一个 modalviewcontroller 中解除 modalviewcontroller,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5935462/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com