首页 文章

在Xamarin Forms中的本机Web浏览器中加载本地html文件

提问于
浏览
1

如何在Xamarin Forms中的本机Web浏览器中加载本地HTML文件?

对于Eg:Android手机需要在Android手机浏览器中打开对于iOS:iPhone需要打开Safari For UWP:Windows需要打开Internet Explorer

2 回答

  • 0

    不幸的是,在iOS中支持 not ,您只能使用像 [[UIApplication sharedApplication] openURL:url]; 这样的方法来打开Safari应用程序来浏览链接,但不能使用本地文件 . 您可以参考与iOS相关的Open local html file with Safari .

    在Android中,您必须将html文件复制到共享存储,而不是使用像资产这样的路径 . 否则,浏览器无法访问该文件 . 请参阅how open local html page in browser .

    我不熟悉UWP,但我发现了这个:[UWP]How to launch default web browser on local app HTML file/images? . 看起来在UWP中实现这一点并不友好 .

    也许,你必须考虑WebView .

  • 1

    是否有必要在本机Web浏览器中打开?也许你可以使用WebView

    WebView可以显示嵌入在应用程序中的HTML,CSS和Javascript的内容 . 例如:

    <html>
      <head>
        <title>Xamarin Forms</title>
      </head>
      <body>
        <h1>Xamrin.Forms</h1>
        <p>This is an iOS web page.</p>
        <img src="XamarinLogo.png" />
      </body>
    </html>
    

    要使用WebView显示本地内容,您需要像任何其他文件一样打开HTML文件,然后将内容作为字符串加载到HtmlWebViewSource的Html属性中 . 有关打开文件的详细信息,请参阅Working with Files .

    或者只是使用:

    var browser = new WebView();
    var htmlSource = new HtmlWebViewSource();
    htmlSource.Html = @"<html><body>
      <h1>Xamarin.Forms</h1>
      <p>Welcome to WebView.</p>
      </body></html>";
    browser.Source = htmlSource;
    

相关问题