Я использую WebView для отображения HTML из строки. Этот HTML ссылается на таблицу стилей, которую я локально размещаю на устройстве. Я следую инструкциям от the official docs, поэтому можно получить доступ к локальному файлу CSS. Он отлично работает на Android и iOS, но я не могу заставить его работать на Windows Phone 8.1. Я поместил файл CSS в корень проекта и установил действие сборки в Контент, а затем установите BaseUrl на ""
(я тоже пробовал ms-appx-web:///
, без успеха).Xamarin Forms WebView - локальные активы, не найденные на Windows Phone
Кто-нибудь знает, отсутствуют ли в документах какие-либо инструкции? Или это ошибка в Формах? Любая помощь будет оценена по достоинству.
Вот код для заполнения WebView с данными (в формах PCL):
private async Task LoadData()
{
string html = await _dataProvider.GetHtmlAsync("index");
WebView.Source = new HtmlWebViewSource
{
Html = html,
BaseUrl = _baseUrlProvider.Get()
};
}
_baseUrlProvider
является экземпляром моей WebViewBaseUrlProvider
, который определяется следующим образом:
internal class WebViewBaseUrlProvider : IWebViewBaseUrlProvider
{
public string Get() => "";
}
EDIT:
Видя this question заставляет меня поверить, что на самом деле есть ошибка в Xamarin Forms. Когда ссылка в HTML содержит целое ms-appx-web:///style.css
вместо style.css
, он внезапно начинает работать. Очевидно, что это не совсем кросс-платформенный ...
пожалуйста, вы можете поделиться своим полный код, написанный для загрузки HTML-файла? –
см. Это http://stackoverflow.com/questions/39090445/visual-studio-2015-wont-display-local-web-page-ms-appx/39198818#39198818 –
Конечно, я только что редактировал вопрос. Ответ, который вы упомянули, действителен для Universal App. Я нацелен на Windows Phone 8.1. –