在导航堆栈中加载UIViewController两次

时间:2012-04-20 11:17:40

标签: iphone ios uiviewcontroller uinavigationcontroller

我有一个UIViewController(比如A)。点击UIViewController(A)中的按钮,我加载UIWebView。点击UIWebView中的某个组件,我需要再次推送UIViewController(A)。我知道,从概念上讲,它不是正确的做法。这里有哪些替代方案?

4 个答案:

答案 0 :(得分:1)

问题是,你想要一个新的UIViewController实例,还是只想更新第一个UIViewController? 对于第一个选项,您必须创建一个新的UIViewController实例并推送它。 对于第二个选项,您必须弹出UIWebView控制器并向第一个UIViewController发送消息以更新自身,或者生成UIViewController侦听的通知以便自我更新。

答案 1 :(得分:0)

您无法在导航堆栈上两次推送相同的UIViewController。但是你可以创建一个新的A类实例并推送它。

答案 2 :(得分:0)

试试这段代码:

[self.navigationController popViewControllerAnimated:YES];

答案 3 :(得分:0)

确保您没有针对同一按钮的多个操作。就我而言,我已经为同一个按钮提供了2个IBAction。