Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/102.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios WebView仅显示白色,尽管已设置委托并且正在调用方法_Ios_Uiwebview - Fatal编程技术网

Ios WebView仅显示白色,尽管已设置委托并且正在调用方法

Ios WebView仅显示白色,尽管已设置委托并且正在调用方法,ios,uiwebview,Ios,Uiwebview,我有一个viewcontroller,它在加载的视图中加载webView @synthesize webView = _webView; - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view from its nib. self.webView = [[UIWebView alloc] init]; [self.webView se

我有一个viewcontroller,它在加载的视图中加载webView

@synthesize webView = _webView;

- (void)viewDidLoad
{
    [super viewDidLoad];
    // Do any additional setup after loading the view from its nib.
    self.webView = [[UIWebView alloc] init];
    [self.webView setDelegate:self];
    NSString *string = @"http://www.google.com";
    NSURL *url = [NSURL URLWithString:string];
    NSLog(@"The URL is %@", url);
    NSURLRequest *request = [NSURLRequest requestWithURL:url];
    NSLog(@"The request is %@", request);
    NSLog(@"webview delegate is %@", self.webView.delegate);
    NSLog(@"webview is %@", self.webView);
    [self.webView loadRequest:request];
}
调试时一切正常,这意味着没有返回零。我在.h文件中声明了如下属性

@property (nonatomic, retain) IBOutlet UIWebView *webView;
我也试过了

@property (nonatomic, strong) IBOutlet UIWebView *webView;

IB中的WebView连接到委托和此属性。问题是,无论我尝试什么url(我在浏览器中尝试了所有url),web视图都只返回一个白色屏幕。我知道所有的委托方法都被调用了,因为我登录到了控制台。有没有人知道如何解决这个问题,或者我做错了什么。

嗯,对我来说,解决这个问题似乎很简单

您没有为web视图设置任何框架。请尝试以下操作:

self.webView = [[UIWebView alloc] initWithFrame:CGRectMake(0,0,500,500)];
当然,web视图的实际尺寸可能会有所不同。你得自己调整一下

更新

我发现您没有将web视图添加为子视图。在调用
loadRequest后添加以下行:

[self.view addSubview:self.webView];
希望这有帮助

从您的代码-

@property (nonatomic, retain) IBOutlet UIWebView *webView;
由于您已将webview连接到插座,因此webview实例将在取消Nib归档后创建

因此无需再次实例化webview-

self.webView = [[UIWebView alloc] init];

从代码中删除上述行并对其进行测试。应该有用

您没有将webView添加到根视图。我尝试过,但结果相同。下面是日志上写的。URL是请求是{URL:}webview委托是webview应该开始加载URL加载教程URL。。。。。由于某种原因,应该开始加载URL加载完毕教程URL,应该StartLoadWithRequest被调用两次。。。。