2013-05-21 3 views
15

Когда есть метод shouldOverrideUrlLoading?Android Webview shouldOverrideUrlLoading метод

webView.setWebViewClient(new WebViewClient(){ 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 


    } 
}); 
  1. Это вызывается во время начальной загрузки URL? например webView.loadUrl("file:///android_asset/html/index.html");
  2. Называется ли это каждый раз URL-адрес изменения веб-просмотра?

Любые ссылки? Я его не нашел. Спасибо

+0

См. [Этот ответ] (http://stackoverflow.com/a/6739042/1503078). Я также проверял: 'shouldOverrideUrlLoading' не вызывается при использовании loadUrl – erdemlal

ответ

10
  1. Однако он вызывается, когда WebView загружает другой URL-адрес из запроса пользователя.

  2. Вызов loadUrl() также вызывает метод shouldOverrideUrlLoading(). (Только тогда, когда новый URL собирается быть загружен.)

Дайте хост-приложению возможность взять на себя управление, когда новый URL собирается быть загружен в текущем WebView. Если WebViewClient не предоставлена, по умолчанию WebView спросит Activity Менеджер, чтобы выбрать правильный обработчик для URL. Если WebViewClient имеет значение , return true означает, что приложение-хозяин обрабатывает URL-адрес, , а return false означает, что текущий WebView обрабатывает URL-адрес.

Ref: public boolean shouldOverrideUrlLoading (WebView view, String url)

+4

Нет, просто вызов' loadUrl() 'НЕ запускает' shouldOverrideUrlLoading() '. Только когда новый URL-адрес уже загружен. –

+2

@HenriquedeSousa Привет, спасибо за ваш драгоценный downvote. Это поможет мне снова изучить концепцию :). Пожалуйста, добавьте свой ответ, поэтому он будет полезен и для меня, и для меня. –

+0

Если вы отредактируете свое сообщение, чтобы люди не вводили в заблуждение вашим ответом и не теряли драгоценное время, я буду очень счастлив снова подняться :) –

1

Ниже ответ для обоих вопросов:

Согласно document, он будет управлять каждый раз, когда новый URL составляет около загрузить в текущем WebView.

+0

как насчет начального URL-адреса, загруженного в веб-просмотр? –

+0

@JRGalia выше ответ для обоих вопросов. –