2011-12-27 3 views
1

Я использую webview высотой 60dp, и я передаю ему локальный файл html, по умолчанию, когда я нажимаю ссылку в веб-браузере, он должен открыть браузер. Но как ни странно его открывает связь с в WebView, я также попытался Webview клиента и пытается передать URL ответа на браузер по умолчанию с помощью намерения, но тщетно ..Попытка передать URL-адрес из веб-браузера в браузер

мой фрагмент кода:

WebViewClient yourWebClient = new WebViewClient() 
     { 

      @Override 
      public boolean shouldOverrideUrlLoading(WebView view, String url) 
      { 
       System.out.println("Inside WebViewClient the URL is....."+url); 

       Intent i = new Intent(Intent.ACTION_VIEW); 
       i.setData(Uri.parse(url)); 
       startActivity(i); 

      return true; 
      } 
     }; 

    WebView ad = (WebView) findViewById(R.id.webview1); 
    ad.getSettings().setJavaScriptEnabled(true); 
    ad.loadUrl(feed.getItem(position).getLink()); 
    ad.getSettings().setLoadWithOverviewMode(true); 
    ad.getSettings().setUseWideViewPort(true); 
    ad.setInitialScale(100); 
     ad.setWebViewClient(yourWebClient); 
    ad.loadUrl("file:///android_asset/advertisement.htm"); 

ответ

1

Остановите текущую загрузку веб-просмотра. Как Объявление объект WebView, Попробуйте сделать это следующим образом:

@Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) 
     { 
      System.out.println("Inside WebViewClient the URL is....."+url); 

      ad.stopLoading(); 
      Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); 
      startActivity(intent); 

     return true; 
     } 

добавить Также это время добавления настройки для вашего WebView:

ad.getSettings().setSupportMultipleWindows(false); 

Edit:

Попробуйте связать хром с вашим веб-просмотром, а затем проверить:

ad.setWebChromeClient(new MyWebChromeClient()); 

Надеюсь, это сработает для вас.

+0

Спасибо за ответ Усама Сарвар, но, к сожалению, это не решает мою проблему. Если вы видите, что файл advert.html, который я загружаю, имеет код java-скрипта из Google, который генерирует объявления с соответствующими ссылками на объявление. ваш код и мой код будут работать, когда он попытается открыть гиперссылку из веб-просмотра, но sysout в «WebViewClient» не печатает ни в одном случае. –

+0

проверить измененный пост. Это может помочь. –

+0

Спасибо за ваш ответ, теперь я использую другой файл html, и моя проблема решена. –

 Смежные вопросы

  • Нет связанных вопросов^_^