2014-01-21 55 views
1

我目前正在使用webview,當在webview中點擊某個按鈕時,會彈出Javascript popup。但它並沒有在我的Webview中打開。PopUp屏幕未打開在webview中?

我的代碼是在這裏:

wvPayements = (WebView) view.findViewById(R.id.wvPaymentsPage); 
    wvPayements.getSettings().setLoadWithOverviewMode(true); 
    wvPayements.getSettings().setUseWideViewPort(true); 
    wvPayements.getSettings().setSupportZoom(true); 
    wvPayements.getSettings().setAllowFileAccess(true); 
    wvPayements.getSettings().setJavaScriptEnabled(true); 
    wvPayements.getSettings() 
      .setJavaScriptCanOpenWindowsAutomatically(true); 
    wvPayements.getSettings().setBuiltInZoomControls(true); 
    wvPayements.setWebViewClient(new WebViewClient() { 

     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      view.loadUrl(url); 
      return true; 
     } 

     @Override 
     public void onPageFinished(WebView view, final String url) { 
      dialog.cancel(); 
     } 
    }); 
    wvPayements 
    .loadUrl("http://192.168.0.114/Parch_ws/testalert.html"); 
+0

我沒有看到任何對話框被彈出這裏 – Saqib

+0

其從web..not Android原生未來.. – Kishan

回答

4

這裏是您的解決方案

你必須提供一個鍍鉻的客戶端,可以處理警報:

每個人都應該使用WebChromeClient得到這些警報和可以使用onJsAlert()方法覆蓋功能。希望這可以幫助!

WebView wv=new WebView(this); 
wv.setWebChromeClient(new WebChromeClient() { 
    @Override 
    public boolean onJsAlert(WebView view, String url, String message,   JsResult result) { 
       //Required functionality here 
       return super.onJsAlert(view, url, message, result); 
     } 

檢查此鏈接和最新評論,您必須使用WebChromeClient爲您的目的。

http://code.google.com/p/android/issues/detail?id=752

+0

日Thnx buddy..you救了我一小時。 – Kishan

+0

你的歡迎!!! :))) – Hardik

+0

你好@Hardik,我使用了這種方法,但這不適用於我的情況。有沒有其他設置需要做? –