Iphone 从堆栈加载UIViewController
我是iPhone应用程序开发新手。我对视图和视图控制器的概念非常困惑 我的问题如下: 我有一个Iphone 从堆栈加载UIViewController,iphone,ios,uiviewcontroller,presentmodalviewcontroller,Iphone,Ios,Uiviewcontroller,Presentmodalviewcontroller,我是iPhone应用程序开发新手。我对视图和视图控制器的概念非常困惑 我的问题如下: 我有一个UIViewController。出于本例的目的,我们将其称为A 从这里,我使用presentModalViewController加载另一个视图控制器B 在presentModalViewcontroller上,我按下另一个视图控制器C。我想从这个视图控制器加载第一个提到的视图控制器A。我读到这些视图是按堆栈排列的。但是我不知道怎么做 在这种情况下,如何加载相同的视图控制器A?在C上使用-[UIVie
UIViewController
。出于本例的目的,我们将其称为A
从这里,我使用presentModalViewController
加载另一个视图控制器B
在presentModalViewcontroller
上,我按下另一个视图控制器C。我想从这个视图控制器加载第一个提到的视图控制器A。我读到这些视图是按堆栈排列的。但是我不知道怎么做
在这种情况下,如何加载相同的视图控制器A?在
C
上使用-[UIViewController presentingViewController]
方法:
UIViewController *A = C.presentingViewController;
这将返回发送presentModalViewController:animated:
的视图控制器。如果您想向A
提供信息,我会选择委派,但上述方法也适用
如果您的问题是如何返回到
A
(即关闭模态视图控制器),请使用以下方法:
UIViewController *A = C.presentingViewController;
[A dismissModalViewControllerAnimated:YES];
我想说你需要弹出视图控制器C和B回到A。
如果你在B和C的顶部显示A,那么他们可以再次在顶部启动B,在你知道之前,你有一大堆重复的视图在彼此的顶部。你需要使用
UINavigationController
来推送UIViewControllers,这正是我现在所处的情况。所以弹出B和C是这里唯一的解决方案。为了阻止你兜圈子,是的。B是presentmodalviewcontroller,C是viewcontroller。那么我的代码应该是什么样的呢?我解雇了presentmodalviewcontroller。景色很好。我的答案的第一部分说明了如何获取指向a
的指针,以便您可以向它发送消息。这取决于您使用的Xcode版本。如果使用Xcode 4,则可以使用故事板-