将本地CSS文件加载到Xamarin IOS WebView中?

时间:2017-02-06 23:05:34

标签: c# ios xamarin webview xamarin.ios

我可以将本地HTML文件加载到我的<?php $bloq_1 = array(1, 2, 3, 4, 5, 7, 8, 9, 10); foreach ($bloq_1 as $blnu_1) { echo "<article class=\"notxtras\"> <a class=\"notxtras_url_cntn\" href=\"cdn.php?" . $tema_s[$blnu_1]['pltfrm'] . "=" . $tema_s[$blnu_1]['notid'] . "\" title=\"" . $tema_s[$blnu_1]['ttl'] . "\"> <div class=\"notxtras_img_cntn\"> <img src=\"http://cadenanoticias.mx/img/miniatura/" . $tema_s[$blnu_1]['pic1'] . "\" alt=\"" . $tema_s[$blnu_1]['rlcn'] . "\"> </div> <h1 class=\"notxtras_ttl_cntn\">" . $tema_s[$blnu_1]['ttl'] . "</h1> <p class=\"notxtras_brv_cntn\">" . $tema_s[$blnu_1]['brv'] . "</p> <p class=\"notxtras_dsp_cntn\">Por:&nbsp;&nbsp;" . $tema_s[$blnu_1]['aut'] . " &bull; " . $tema_s[$blnu_1]['cdd'] . " &bull; " . ucfirst(strftime("%A %e de %B del %Y", date(strtotime($tema_s[$blnu_1]['fch'])))) . "</p> </a> </article>"; } 中(这样可以正常工作):

WebView

我想在我的HTML文件中引用CSS文件(也是本地文件):

var fileName = "Views/Default.html"; 
var localHtmlUrl = Path.Combine(NSBundle.MainBundle.BundlePath, fileName);
var url = new NSUrl(localHtmlUrl, false);
var request = new NSUrlRequest(url);
WebView.LoadRequest(request);

CSS文件确实存在于<link href="Content/style.css" rel="stylesheet"> 文件夹中,构建操作设置为所述文件的内容。

如何通过我的html文件引用/加载有问题的CSS文件?可能的?

更新:在单独的文件夹中有css和html。将它们放在Content文件夹中,然后在使用Content时更新解决问题的hrefs。

1 个答案:

答案 0 :(得分:3)

检查此链接 https://developer.xamarin.com/recipes/ios/content_controls/web_view/load_local_content/

部分附加信息

还可以显示代码中生成的Html,这对于自定义内容很有用。要显示Html字符串,请使用LoadHtmlString方法而不是LoadRequest。将路径传递到Content目录有助于Web视图解析Html中的相对Urls,例如链接,图像,CSS等。

// assumes you've placed all your files in a Content folder inside your app
string contentDirectoryPath = Path.Combine (NSBundle.MainBundle.BundlePath, "Content/");
string html = "<html><a href='Home.html'>Click me</a></html>";
webView.LoadHtmlString(html, new NSUrl(contentDirectoryPath, true));