UIWebView 显示为白屏

Posted

技术标签:

【中文标题】UIWebView 显示为白屏【英文标题】:UIWebView displaying as a white screen 【发布时间】:2013-05-06 07:24:46 【问题描述】:

在我的应用程序中,我有一个包含 UIWebView 的视图控制器。此视图控制器将 UIWebView 作为 IBOutlet。加载视图时,我只是得到一个白色屏幕,顶部是导航栏。这是加载 UIWebView 的代码。最初我的 completeURL 格式不正确,只是为空。我可以在网上搜索的任何信息似乎都无法帮助我解决这个问题。

-(void) viewWillAppear:(BOOL)animated

    NSString *stringURL = [NSString stringWithFormat:@"www.ncbi.nlm.nih.gov/pubmed/?term=%@", _URL];
    NSURL *completeURL = [NSURL URLWithString: [stringURL stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]];
    NSURLRequest *request = [NSURLRequest requestWithURL:completeURL];
    [_webView loadRequest:request];
    NSLog(@"%@", request);

【问题讨论】:

它是视图控制器的一个属性,由前面的视图传递给它,当它与 www.ncbi.nlm.nih.gov/pubmed/?term= 结合时形成一个合法的 URL 【参考方案1】:

一旦检查这一行可能有问题在这里替换一次并检查它,

NSString *stringURL = [NSString stringWithFormat:@"http://www.ncbi.nlm.nih.gov/pubmed?term=%@", _URL];

【讨论】:

问题出在哪里? ...请描述! pubmed/?term here remove / ,然后可能会起作用,但不确定。 我检查了一个,我得到了“www.ncbi.nlm.nih.gov/pubmed/?term=21452241, 21452247, 21830221”,这不是一个有效的网址......但是完整的URL我相信吗 是的,completeURL 没问题。我什至尝试为它提供一个明显很好的 URL,例如 www.google.com,但我仍然只看到白色 你是对的!哇,我不敢相信我忽略了这么简单的事情。非常感谢!【参考方案2】:

我认为问题可能出在:

NSURL *completeURL = [NSURL URLWithString: [stringURL stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding]];

检查中间字符串

【讨论】:

不,这检查得非常好 那哥们,你为什么会得到零呢? 我在添加 stringByAddingPercentEscapesUsingEncoding: NSUTF8StringEncoding 之前做过,它不喜欢我的字符串中的空格。原来我只是忘记了 http://,不过感谢您的帮助

以上是关于UIWebView 显示为白屏的主要内容,如果未能解决你的问题,请参考以下文章

更改了我的包裹名称,现在我的谷歌地图显示为白屏,我该如何解决这个问题?

如何在 UIWebView 上显示覆盖而不阻止用户与 UIWebView 的交互

UiWebView 全屏显示

使用 UIWebView 显示 html 文件

ARKit 显示损坏的 UIWebView

使用 UIWebView 时如何显示百分比(%)