更新
修复了加载问题。当我使用自定义单元格类时,我只将情节提要中的 tableview 单元格的标识符设置为 customcell 的名称,而不是实际的类本身!菜鸟失误,对不起!
这修复了 viewDidLoad 方法中无法加载网页的问题。现在我只需要对其进行排序,以便根据表格行选择加载正确的网页。PrepareForSegue 是理想的吗?谢谢
原帖
在我的应用程序中,我有一个带有 tableview 的 FirstViewController,它列出了打开时在 secondviewcontroller 中加载 webview 的对象。
所以在我的 didSelectRowAtIndexPath 方法中,我目前有:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{ [self performSegueWithIdentifier:@"Detail" sender:self];
NSIndexPath *selectedRowIndex = [self.tableView indexPathForSelectedRow];
DetailViewController *detailViewController = [DetailViewController alloc];
detailViewController.urlToGet = @"www.google.com"
}
现在 DetailViewController 当然在 Storyboard 中有它的 viewcontroller 对象,其中设置了委托和 webView 出口。
在 DetailViewController 类本身中,我什至在 viewDidLoad 中尝试了这个,只是为了让一些网站显示:
NSString *fullURL = @"http://www.google.com";
NSURL *url = [NSURL URLWithString:fullURL];
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
[webView loadRequest:requestObj];
但我得到的只是一个空白的网络视图。
我尝试了一个新项目的教程,该项目运行良好,然后复制了它——遗憾的是,它目前在这里不起作用。
我还尝试了 prepareForSegue (因为这样可以传递信息),但这没有用。
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
/*
When a row is selected, the segue creates the detail view controller as the destination.
Set the detail view controller's detail item to the item associated with the selected row.
*/
if ([[segue identifier] isEqualToString:@"Detail"]) {
DetailViewController *detailViewController = [segue destinationViewController];
detailViewController.urlToGet = @"www.google.com";
}
}
两个 ViewController 之间的 segue 具有 Detail 的标识符。
知道为什么我无法让对象甚至加载其 viewDidLoad 中指定的网站吗?
谢谢