【发布时间】:2012-04-01 10:10:43
【问题描述】:
我需要将UIView 推送到我的UINavigation controller。我是这样做的
[self.view addSubview:showContactFlow];
在 UIView 中单击按钮时,我需要将另一个 UIViewController 推到 UIView 上。从UIView 我无法访问self.navigationcontroller 我该怎么做?
编辑:
我已将UIView 设置为我正在推进的新UIViewController 的视图,即前面提到的UIViewController。现在我想知道,如何处理其UIViewController中的UIView按钮事件,它设置在哪个视图中。
【问题讨论】:
-
这不是正确的做法,视图和视图控制器是不同类型的对象。视图控制器确实有一种 uiviews 没有的层次结构。您实际上不能从普通视图控制器推送导航控制器(在 ios5 中您可以这样做,但在逻辑上不正确)。您需要在要显示的视图控制器内部创建一个 uinavigationcontroller,然后以模态方式显示它。如果你只是想模拟推送动画的行为,你可以简单地使用核心动画或仅使用 uiview 的动画。
-
好的。我得到它。我只想知道,如何处理来自其父级
UIViewController的UIView's按钮事件。 -
Xavi 你能试着更好地解释这个问题吗,因为我不明白你是如何设置应用程序的。因为对我来说 push 意味着
[self.navigationController pushViewController: vc animated:YES]的动作。没听懂,抱歉 -
我的主要问题是我有一个子类
UIView并且我必须在我的UINavigationController中有那个UIView。我必须从“UIView”加载另一个UIViewController。按照您的建议,我创建了一个没有 xib 的新UIViewController,并添加了“UIView”作为新UIViewController的视图。我在我的UIViewController中的前面提到的'UIView. Now the problem I am having is that I need to handle the events of the new 'UIView中有一个自定义UIView,它包含包含当前'UIView' 的父'UIView'。我该怎么做。
标签: iphone ios uiview uiviewcontroller uinavigationcontroller