我有一个RSS解析器,它从RSS源下载每个项目的链接。如何使用当用户在UITable中选择一行时,它会打开我的Web视图(按照本教程http://dblog.com.au/iphone-development/iphone-sdk-tutorial-build-your-very-own-web-browser/制作),其中包含项目的URL(可以通过news.link收集)< / p>
感谢。
DidSelectRow代码:
webView = [incidents objectAtIndex:indexPath.row];
NSURLRequest *request = [NSURLRequest requestWithURL: news.link];
[webView loadRequest:request];
[self.navigationController pushViewController:webView animated:YES];
[tableView deselectRowAtIndexPath:indexPath animated:YES]
[webView release];
答案 0 :(得分:0)
您需要在控制tableView:didSelectRowAtIndexPath:
。
UITableView
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSURL* url = ... determine the URL to show ... ;
... load url in your Web view ... ;
[tableView deselectRowAtIndexPath:indexPath animated:YES]; // Conform to Apple human-interface guidelines (Table View Programming Guide for iPhone OS)
}
答案 1 :(得分:0)
代码示例中的webView是什么?
它是哪一类?
UIViewController或UIWebView?
有一行您将其用作视图控制器,并且有一行您尝试将其用作Web视图。
我敢打赌它是一个视图控制器,因为你写道你在loadRequest行上有一个警告......
无论如何,具有Web视图的视图控制器应该有一些方法可以接收URL请求并将其加载到Web视图中:
// In webViewController.h:
- (void)loadWebViewWithRequest:(NSURLRequest *)request;
// In webViewController.m:
- (void)loadWebViewWithRequest:(NSURLRequest *)request {
[webView loadRequest:request];
}
这是您必须在didSelectRow方法中使用的方法,而不是loadRequest
...