在HtmlWebViewSource属性中查找和替换

时间:2019-03-01 18:06:30

标签: c# xamarin.forms

我有一些HTML代码(来自API),并且图像有问题。基本上,它们没有绝对URL,但缺少URL的开头(https://www.myweb.com/attachement/),这是一个很大的问题,因为当我通过WebView显示此HTML代码时,它当然不会加载图像。

所以我告诉你到目前为止我做了什么。

public ArticleContentPage (Article article)
    {
        InitializeComponent ();
        var htmlSource = new HtmlWebViewSource(); 
        //Creating header for our article with some structure to it
        htmlSource.Html = @"<html>
                                <body> 
                                    <h1 style='text-align: center'> "+article.title+"</h1>" +
                                    "<h5> Added: "+article.date+" </h5>"
                                    + article.body +
                                "</body>"+
                             "</html>";
        ArticleView.Source = htmlSource; //Adding the article as WebView source(HTML content)

    }

现在的想法是执行foreach并分离整个HTML代码,并使用简单的if()检查此实际单词是否是<img> HTML标签,这是个坏主意,因为文章有时会很长所以要花很多时间...

感谢您提供任何有关如何修改这些<img>标签的提示。重要信息是我不想删除它们,因为我不知道整个地址,我只需要对其进行编辑(在原始来源之前添加https://www.mywebsite.com/atachements/部分。

1 个答案:

答案 0 :(得分:0)

HtmlWebViewSource具有BaseUrl属性,可以完全解决此问题。