にHybridWebview常に開くフォームURLは開きますが、新しいブラウザではいつも、ContentPageに埋め込まれていないと思います。Xamarinは、ここで説明したように、私はHybridWebViewを実施してきたブラウザ
Android.Webkit.WebViewに設定プロパティがありますが、どのように表示するかを判断するために使用できますか?
にHybridWebview常に開くフォームURLは開きますが、新しいブラウザではいつも、ContentPageに埋め込まれていないと思います。Xamarinは、ここで説明したように、私はHybridWebViewを実施してきたブラウザ
Android.Webkit.WebViewに設定プロパティがありますが、どのように表示するかを判断するために使用できますか?
結果はURLが開きますが、常に新しいブラウザに表示され、私のContentPageに埋め込まれません。 Androidプラットフォーム用
あなたがコードからそれを見ることができるように、それはネイティブコントロールとしてAndroid.Webkit.WebView
を使用しています:
if (Control == null) {
var webView = new Android.Webkit.WebView (Forms.Context);
webView.Settings.JavaScriptEnabled = true;
SetNativeControl (webView);
}
その後Android.Webkit.WebView
のためにあなたが閲覧する意図を処理するための活動を有効にしない場合は、あなたがリンクをクリックするとすぐに、デフォルトのAndroidブラウザがそれを処理するので、それは簡単なWebページビューアです。かなりのブラウザではありません。このコードを有効にするには、WebView
:webView.SetWebViewClient(new WebViewClient())
の初期化後にこのコードを使用できます。だから、たとえば、このコードを追加する可能性があります。
if (Control == null) {
var webView = new Android.Webkit.WebView (Forms.Context);
webView.SetWebViewClient(new WebViewClient());
webView.Settings.JavaScriptEnabled = true;
SetNativeControl (webView);
}
通常我々はまた、WebViewClient
をサブクラス化し、それがtrueを返した場合は、この方法は、URLを処理したイベントが伝播してはならないことを意味し、ShouldOverrideUrlLoadingをオーバーライドすることができます。