从模拟显示的弹出视图重新加载UIWebView

时间:2012-06-14 14:18:09

标签: objective-c uiviewcontroller reload popover synthesize

我有一个名为mainViewController的viewController,它包含一个名为“myWebView”的UIWebView。 mainViewController提供了一个名为subViewController的popover viewController。在subViewController中,我有一个应该重新加载myWebView的按钮。做这样的事情:

   mainViewController *vc = [[mainViewController alloc] init];

不起作用,因为它创建了另一个mainViewController实例。如何在当前显示弹出窗口的mainViewController中重新加载myWebView。

1 个答案:

答案 0 :(得分:1)

除非我误解了你的问题,否则这似乎很容易被征服。我想你可以从UIPopoverController发送通知。 首先在viewWillAppear的主视图控制器中添加self作为观察者:

     [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(reloadMyWebView:) name:@"reloadWebView" object:nil];

您必须在主视图控制器上实现将执行实际重新加载的方法, 这将是

    - (void)realoadMyWebView:(NSNotification *)notification

确保在viewWillDisappear中以观察者身份移除自己

   [[NSNotificationCenter defaultCenter]removeObserver:self];

然后您可以发布来自popover控制器的通知

   [[NSNotificationCenter defaultCenter]postNotificationName:@"reloadWebView" object:nil userInfo:nil];