0

有没有办法可以在 shouldOverrideUrlLoading() 中放置一个 if 语句来检查网络/移动访问。然后显示一条错误消息,而不是移动 chrome 显示的讨厌的页面未找到页面。

类似的东西

    public boolean shouldOverrideUrlLoading(WebView view, String url) 
 {        
    if(isOnline() == false)  
        {
         AlertDialog.Builder dlgAlert  = new AlertDialog.Builder(this);
         dlgAlert.setMessage("Mobile device currnetly has no internet access.  Please try again.");
         dlgAlert.setTitle("No Connection");
         dlgAlert.setPositiveButton("OK", null);
         dlgAlert.setCancelable(true); 
         dlgAlert.setIcon(R.drawable.ic_launcher);
         dlgAlert.create().show(); 
        }

        return false;          
 }
4

1 回答 1

0

好的,我找到了解决问题的方法。首先,我将 shouldOverrideUrlLoading() 放在新的 WevViewclient 中。在我把它放在那个街区之外之前。

接下来我收到一条错误消息

 AlertDialog.Builder dlgAlert  = new AlertDialog.Builder(this);

接下来,我将代码更改为此,使用 Toast 消息而不是 AlertDialog Builder。

@Override public boolean shouldOverrideUrlLoading(WebView view, String url) {

             if (isOnline() == false)
             {
                 Toast msg = Toast.makeText(MainActivity.this,"No mobile or web access, try again later.",Toast.LENGTH_LONG);
                 msg.show();
                 return true;
             }
             else
             { 
                 return false;
            }
         }
于 2012-10-10T16:31:48.237 回答