url没有在UIWebView中加载

时间:2011-04-13 06:31:54

标签: iphone objective-c uiwebview

我有一个标签栏控件。第一个选项卡包含导航控件。在第二个标签上,我想加载一个网页(比如google.com)。我把代码编写为

NPIViewController.h

@interface NPIViewController : UIViewController {
   IBOutlet UIWebView *webView;
}
@property (nonatomic,retain) IBOutlet UIWebView *webView;
@end

NPIViewController.m

- (void)viewDidLoad {
  [super viewDidLoad];
  NSURL *url = [NSURL URLWithString:@"http://www.google.com"]; 
  NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
  [webView setScalesPageToFit:YES];         
  [self.webView loadRequest:request];               
}

该页面无法加载。没有编译或运行时错误。这有什么问题?

4 个答案:

答案 0 :(得分:33)

知道什么是错的,你可以这样做。

- (void)viewDidLoad {
  [super viewDidLoad];
  webView.delegate = self;
  NSURL *url = [NSURL URLWithString:@"http://www.google.com"]; 
  NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
  [webView setScalesPageToFit:YES];         
  [self.webView loadRequest:request];               
}

在您的课程中添加此新方法

- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
   NSLog(@"Error : %@",error);
}

我希望您已将“webView”对象与“界面构建器”中的插件连接起来吗?

谢谢,

答案 1 :(得分:3)

您必须使用https而不是http。如果您使用http,您将收到此错误消息(使用Ravin的代码查看错误):

“无法加载资源,因为App Transport Security策略要求使用安全连接。”

答案 2 :(得分:2)

创建webView

IBOutlet UIWebView *webView;

试试此代码

NSString *urlAddress = @"http://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.
[webView loadRequest:requestObj];

答案 3 :(得分:0)

重新启动您的 IOS模拟器 这真的不明显,但最初在IOS模拟器上查看Safari中的一些网站 重启IOS模拟器后,我的 webView 在模拟器和设备上都成功打开。

请参阅此famous链接。