Webview加载到屏幕外?

时间:2011-09-16 11:55:51

标签: android android-emulator

此代码正在使用另一个aspx表单,现在当我更改表单时,它可以在blackberry的webview中运行,但是android现在可以启动外部浏览器,甚至在应用程序内启动之前就知道了。

webview = (WebView) findViewById(R.id.webView1);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.setInitialScale (5); 
    webview.loadUrl(URL);
    webview.requestFocus(View.FOCUS_DOWN); 

为什么现在在浏览器外加载?

2 个答案:

答案 0 :(得分:1)

您需要的只是实施shouldOverrideUrlLoading()。我最近的项目的一个片段:

public class WebViewCustom extends Activity {

WebView mWebView;
String mUrl;
String urlHistory;
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);


        setContentView(R.layout.lessons_page);
        mWebView = (WebView) findViewById(R.id.webview);
        mWebView.setWebViewClient(new WebViewOverrideUrl());
        mWebView.getSettings().setJavaScriptEnabled(true);
        mWebView.getSettings().setPluginsEnabled(true);
        mWebView.loadUrl("YOUR-URL-HERE");


    }

       private class WebViewOverrideUrl extends WebViewClient {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
        }

}

快乐的编码!

答案 1 :(得分:0)

据推测,您的服务器正在发布重定向。如果您实施WebViewClient并将其覆盖shouldOverrideUrlLoading(),则可以强制重定向加载到WebView本身。