Страницы

Поиск по вопросам

четверг, 19 марта 2020 г.

WebView Android

#android #webview


Доброго времени суток!
Разработкой приложений под андройд занимаюсь уже относительно давно, но вдруг наткнулся
на весьма необычную проблему с виджетом WebView. Дело в том, что при стандартной настройке
разрешений в главном файле-манифесте Android-приложения:
 

и последующей попытке отобразить определенную HTML-стрницу непосредственно в самом
виджете:
public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        WebView wv = (WebView)findViewById(R.id.webView);
        wv.getSettings().setJavaScriptEnabled(true);
        wv.loadUrl("http://www.example.com/");
    }

вроде бы все отображается, но при попытке перейти по ссылкам на странице и прочим
пользовательским действиям всплывает сообщение с просьбой "Выбрать действие по умолчанию(
выполнить действие с помощью )". И от этого мэссэджа никак не избавиться... Что же
мне делать, подскажите пожалуйста?    


Ответы

Ответ 1



Установить для WebView свой WebViewClient, в котором переопределить метод shouldOverrideUrlLoading. Give the host application a chance to take over the control when a new url is about to be loaded in the current WebView. If WebViewClient is not provided, by default WebView will ask Activity Manager to choose the proper handler for the url. If WebViewClient is provided, return true means the host application handles the url, while return false means the current WebView handles the url. Returns True if the host application wants to leave the current WebView and handle the url itself, otherwise return false. http://developer.android.com/reference/android/webkit/WebViewClient.html

Комментариев нет:

Отправить комментарий