【发布时间】:2011-03-31 15:56:32
【问题描述】:
我有一个 TableViewController,当我选择一个单元格时,它应该加载一个带有 WebView 的 ViewController。
代码如下:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
PostViewController *postViewController = [[PostViewController alloc] initWithNibName:@"PostViewController" bundle:[NSBundle mainBundle]];
[postViewController.webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.fr"]]]
[self.navigationController pushViewController:postViewController animated:YES];
[PostViewController release];
}
问题是 ViewController 已加载,但 WebView 中没有任何反应。 当我调试程序时,我可以看到 WebView 的地址是 0x0,所以我猜有问题。 是不是因为我尝试在加载其父 ViewController 之前修改 WebView 的内容?
我想另一种正确的方法是将 URL 传递给 ViewController,然后从 viewWillAppear 方法内部调用 WebView 上的 loadRequest。 但我需要了解为什么它不能以这种方式工作。
【问题讨论】:
-
您的网络视图在哪里初始化?
-
恐怕根本没有初始化。但在这种情况下似乎没有必要,因为我尝试了 BuildSucceeded 的解决方案,它无需初始化即可工作。 WebView 被声明为我的 PostViewController 的出口,它链接到 PostViewController.xib 中的 WebView 控件。
标签: iphone cocoa-touch uikit uiwebview