С помощью этой команды вы можете открыть веб-страницу в браузере устройства (Safari).
UIApplication.SharedApplication.OpenUrl(new NSUrl("www.google.com"));
Вы не должны использовать UIWebView
. Если вы хотите открыть некоторые веб-страницы в UIWebView
, а некоторые с Safari
, вам необходимо реализовать делегата ShouldStartLoad
. Здесь вы можете определить, следует ли открывать веб-страницу в UIWebView
или, скорее, в Safari
.
private bool HandleShouldStartLoad(UIWebView webView, NSUrlRequest request, UIWebViewNavigationType navigationType)
{
// you need to implement this method depending on your criteria
if (this.OpenInExternalBrowser(request))
{
// open in Safari
UIApplication.SharedApplication.OpenUrl(request.Url);
// return false so the UIWebView won't load the web page
return false;
}
// this.OpenInExternalBrowser(request) returned false -> let the UIWebView load the request
return true;
}
В прошлом где-то в ViewDidLoad
(или другое место, где вы initiliaze WebView
) добавьте следующий код.
webView.ShouldStartLoad = HandleShouldStartLoad;
Спасибо за быстрый ответ, однако, когда я реализую этот делегат веб-представление появляется пустой, тогда как раньше я был в состоянии загрузить HTML текстовую строку в: Я реализации следующим образом: –
'код \t \t \t WebView .ShouldStartLoad = (ш, URLRequest, navigationType) => { \t \t \t \t UIApplication.SharedApplication.OpenUrl (URLRequest.url); \t \t \t \t return false; \t \t \t}; ' –
Я отредактировал свой ответ, пожалуйста, посмотрите сейчас. Верните true для ссылок, которые вы хотите загрузить в веб-представление, и false для ссылок, которых вы не используете. –