0

这是我的 android 应用程序的一部分,我创建了一个 webview...但是当我单击 webview 内的任何链接时...什么也没有发生...这是我的代码...我也想启动该链接在任何浏览器或任何已安装的下载管理器中......我是新手......请帮我解决这个问题

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Show the Up button in the action bar.
    setupActionBar();
    // no need to use title bar
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    // set webview as main content only
    mWeb = new WebView(this);
    setContentView(mWeb);
    // set Javascript
    WebSettings settings = mWeb.getSettings();
    settings.setJavaScriptEnabled(true);
    // the init state of progress dialog
    mProgress = ProgressDialog.show(this, "Loading", "Please wait for a moment...");

    // add a WebViewClient for WebView, which actually handles loading data from web
    mWeb.setWebViewClient(new WebViewClient() {
        // load url
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }

        // when finish loading page
        public void onPageFinished(WebView view, String url) {
            if(mProgress.isShowing()) {
                mProgress.dismiss();
            }
        }


    });
    // set url for webview to load
    mWeb.loadUrl("http://vesit-d7b.host22.com/Assignments/ECCF.html");
}
4

3 回答 3

0

当你点击链接时,看看会出现什么 url .....

   mWeb.setWebViewClient(new WebViewClient() {
    // load url
    public boolean shouldOverrideUrlLoading(WebView view, String url) {
        Log.v("here","the link is ::" + url);
        view.loadUrl(url);
        return true;
    }

然后把它复制到浏览器上看看它是否是一个有效的链接。

于 2013-08-15T09:12:53.377 回答
0

@Ritesh 删除 shouldOverrideUrlLoading 方法它将起作用

于 2013-08-15T09:13:05.657 回答
0

请使用此代码并检查您的 url 是否被 webview 捕获。

       myweb.setWebViewClient(new WebViewClient() {
                @Override
                public void onPageStarted(WebView view, String url,
                        Bitmap favicon) {
                       Toast.makeText(this,url,Toast.LENGTH_SHORT).show();
                }

                @Override
                public void onPageFinished(WebView view, String url) {
                    dialog.dismiss();
                }
            });
于 2013-08-15T09:09:06.353 回答