Как загрузить страницу HTML с содержимым JavaScript в WebView Xamarin.Forms?
Я новичок в платформе xamarin и C# форм. Я делаю простое приложение для веб-просмотра. и моя главная страница
namespace jsinjection
{
public class WebviewPage : ContentPage
{
public WebviewPage ()
{
Content = new WebView {
Source = "https://www.google.com.tr/",
HeightRequest = 1000,
WidthRequest = 1000
};
}
}
}
Я хочу сделать javascript-инъекцию в это веб-представление в соответствии с данными конкретной платформы. Но я не знаю, как получить это веб-представление за пределами своего класса. И какую часть проекта мне делать инъекцией.
2 ответа
Посмотрите, можете ли вы использовать следующий код:
WebView wv = new WebView();
wv.EvaluateJavascript ("document.body.innerHTML");
или же
wv.InvokeScriptAsync("eval", new string[] { "document.body.innerHTML" });
Смотрите также: Xamarin: Как получить HTML со страницы в WebView?
Посмотрите на Xamarin.Forms.HtmlWebViewSource
И вот пример:
// Get html content of your page..
// It could contain javascript code or references to files in the assets (example bellow).
string htmlText = MyItem.Article.ToString();
var browser = new WebView ();
var html = new HtmlWebViewSource {
Html = htmlText
};
// Set your HTML content to implemented WebView
browser.Source = html;
Или используя Xamarin.Forms.UrlWebViewSource
// Just use local URL for your HTML file that stores inside your application content.
browser.Source = new UrlWebViewSource {Url = "Content/index.html"};