0

我运行一个论坛,其中安装了一个喊话框插件,用户可以在其中像即时消息一样互相交谈。我决定做一个我认为会是一个快速的应用程序,它只会显示喊话框,这样用户就可以在旅途中交谈,而不是使用那里的浏览器。我发现的问题是,使用 android webview 一切都很好,但是当你尝试发送一个喊叫时,它会出现一个错误,说“失败!” 好像它与实际的喊话箱没有通信。

我的问题是 webview 可以像这样使用还是只能用于显示网页而不实际与之交互?以下是我正在使用的代码,因此你们可以查看我是否遗漏了任何内容,如果有,请指出正确的方向,谢谢。

public class splash extends Activity {

        WebView mWebView;


        @Override
        public void onCreate(Bundle savedInstanceState)
        {
            final Activity mActivity = this;
            super.onCreate(savedInstanceState);

            // Adds Progrss bar Support
            this.getWindow().requestFeature(Window.FEATURE_PROGRESS);
            setContentView(R.layout.mainx);


            // Makes Progress bar Visible
            getWindow().setFeatureInt( Window.FEATURE_PROGRESS, Window.PROGRESS_VISIBILITY_ON);

            mWebView = (WebView) findViewById( R.id.webview);
            mWebView.getSettings().setJavaScriptEnabled(true);     
            mWebView.loadUrl("http://www.myforum.com/forums/shoutbox.php");


            mWebView.setWebChromeClient(new WebChromeClient() 
            {
                public void onProgressChanged(WebView view, int progress)  
                {
                    //Make the bar disappear after URL is loaded, and changes string to Loading...
                    mActivity .setTitle("Loading...");
                    mActivity .setProgress(progress * 100); //Make the bar disappear after URL is loaded

                    // Return the app name after finish loading
                    if(progress == 100)
                    {
                       setTitle(R.string.title);
                    }
                }
            });
        }
     }
4

1 回答 1

0

创建和设置一个

WebViewClient

子类。当发生影响内容呈现的事情时(例如,错误或表单提交)将调用它。您还可以在此处拦截 URL 加载(通过shouldOverrideUrlLoading())。

于 2013-03-09T04:15:01.907 回答