我正在尝试将 html 字符串加载到 webview 中。但是 webview 在运行时显示白色空白

Posted

技术标签:

【中文标题】我正在尝试将 html 字符串加载到 webview 中。但是 webview 在运行时显示白色空白【英文标题】:I am trying to Load html string into a webview. But the webview shows a white blank colour on run time 【发布时间】:2017-02-08 09:26:44 【问题描述】:

。添加 UIWebViewDelegate 并像这样声明对象。

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

但仍然有同样的问题。

- (void)viewDidLoad 
    [super viewDidLoad];
    [[self navigationController] setNavigationBarHidden:YES animated:YES];
    [_aboutWebView setDelegate:self];

    [self loadWebView];
    // Do any additional setup after loading the view.

-(void)loadWebView
    _aboutWebView= [[UIWebView alloc]init];
    _aboutWebView.backgroundColor= [UIColor blueColor];
    NSString *embedhtml= @"html Code";

    [_aboutWebView loadHTMLString: embedHTML baseURL: nil];


【问题讨论】:

我尝试了与您相同的代码,它适用于我。不要在 loadWebView 方法中分配和初始化 _aboutWebView。 谢谢!这就是问题@user3182143 【参考方案1】:

请从您的代码中删除以下行。它适用于您。

_aboutWebView= [[UIWebView alloc]init];

【讨论】:

【参考方案2】:

初始化后设置web-view delegate,并添加这行代码[webView setScalesPageToFit:YES];

【讨论】:

【参考方案3】:

无需在您的 loadWebView 方法中再次分配您的 webview。 评论这一行“_aboutWebView= [[UIWebView alloc]init]”。

您已经在为您的 webview 创建一个 IBOutlet,它会自动创建一个对象用于查看。

【讨论】:

【参考方案4】:

在 HTML 字符串中有以下内容

<head><style type='text/css'>body background-color: transparent;border: 0px;margin: 0px;padding: 0px;</style></head>

对于 webview 有这个

yourWebView.backgroundColor = [UIColor clearColor];
yourWebView.opaque = NO;

这不会在运行时显示白色...

【讨论】:

【参考方案5】:

首先,您的 HTML 格式不正确,编写正确的 HTML 以加载到 webView。 然后,添加 self.view.backgroundColor=[UIColor whiteColor];在函数中 - (void)viewDidLoad.

希望能帮到你!

【讨论】:

以上是关于我正在尝试将 html 字符串加载到 webview 中。但是 webview 在运行时显示白色空白的主要内容,如果未能解决你的问题,请参考以下文章

使用jquery将html字符串加载到div中

如何在 iOS 上注入用户脚本?

将 </> 文本附加为 html 时,它不会加载到 DOM [关闭]

将 HTML 文件加载到输出流

无法将 odbcdatareader 加载到数据表

iOS - UIWebView 加载 HTML 字符串包含 iframe 不起作用