2017-06-19 7 views

答えて

2

結果は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ページビューアです。かなりのブラウザではありません。このコードを有効にするには、WebViewwebView.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をオーバーライドすることができます。

関連する問題