在Cross Browser项目中加载PCL源HTML页面(Xamarin)

时间:2017-10-31 12:11:07

标签: xamarin xamarin.ios xamarin.android

我正在使用Xamarin来支持

  • 的Android
  • 的iOS
  • Windows 8.1
  • WPF

我可以创建一个PCL项目,每个平台都可以从他们的平台特定项目中看到。

我希望能够做的是在PCL中托管HTML页面和相关的javascript文件。

我在加载本地Html文件时看到的所有示例都是在每个特定于平台的项目中都有HTML的副本。我不想要4份HTML副本我想在PCL中使用一份副本。

可以这样做吗?

1 个答案:

答案 0 :(得分:1)

几个月前我们试图做同样的事情,据我记得我们做不到。我们使其工作的解决方案是使用PCLStorage nuget将html文件下载(或在您的情况下提取)到每个平台的本地目录,并使用自定义渲染器直接从本地路径加载。

我们为WebView的每个平台使用自定义渲染器而不是crossx webview。需要注意的是,如果您的目标是iOS9 +,则必须使用WKWebView,而不是使用UIWebView。

只需将html文件的主目录传递给每个渲染器,然后尝试使用本机控件来使用本地内容。不幸的是,当涉及本地内容时,xamarin的crossx WebView不提供灵活的操作。