我正在尝试加载UIWebView
,但我无法理解为什么不起作用,我这样做:
Loading *load = [[Loading alloc] init];
[load searchName];
然后Loading.h
@interface Loading : NSObject <UIWebViewDelegate>
{
UIWebView *myWebView;
}
- (void) searchName;
Loading.m
- (void) searchName{
myWebView = [[UIWebView alloc] init];
myWebView.delegate = self;
NSString *urlAddress = @"www.google.com";
//Create a URL object.
NSURL *url = [NSURL URLWithString:urlAddress];
//URL Requst Object
NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
//Load the request in the UIWebView.
[myWebView loadRequest:requestObj];
}
- (void)webViewDidFinishLoad:(UIWebView *)thisWebView
{
NSString *yourHTMLSourceCodeString = [myWebView stringByEvaluatingJavaScriptFromString:@"document.body.innerHTML"];
NSLog(@"%@",yourHTMLSourceCodeString);
}
为什么永远不会调用webViewDidFinishLoad
方法?
答案 0 :(得分:0)
您是否使用IB创建了此Webview?你是否将代表连接到webview?
webView:didFailLoadWithError:
捕获错误(如果有错误,请将其发布)[myWebView setDelegate:self];
或self.myWebView.delegate = self;
如果没有发生任何事情,请检查委托的输出:
self.myWebView.delegate = self;
NSLog(@"%@",self);
答案 1 :(得分:0)
是的,请注意内森所说的话。我只是在扩张。
如果您使用的是IB,请连接插座。然后使用[myWebView setDelegate:self];
请务必使用http://
。它自己的Http将不会做任何事情。
您可以加载其他网址吗?
最后,我有一个Cocoa的开源基本Web浏览器,您可以查看。
答案 2 :(得分:0)
您的网页视图未显示的原因是您已将NSObject
课程和NSObject
课程设为XIB
,而您所做的就是拨打-(void)searchName
方法,而不是将其添加到self.view
。