0

サンプル、Google コードのデモ、および WebView を使用したその他のリソースを試しましたが、自分のコードで実行しようとするとうまくいきません。

私は資産フォルダに入れ、使用してindex.htmlをロードしたい:

public class MainActivity extends Activity {

    private WebView webView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        //define webview
        webView = (WebView)findViewById(R.id.webView);
        webView.setHorizontalScrollBarEnabled(false);
        webView.loadUrl("file:///android_asset/www/index.html");
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

}

エミュレーターでは、ファイルがまだ白い背景で表示されず、index.html を開けません。

ノート:-

私の index.html には ajax によって Web サイトからオンラインでデータを取得するための JavaScript が含まれています。

すべての API バージョンで動作するアプリケーション パッケージに既存の .html ファイルをロードする方法はありますか?

よろしくお願いします。


編集 :-

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    webView = (WebView) findViewById(R.id.webView);
    webView.getSettings().setJavaScriptEnabled(true);
    webView.setWebChromeClient(new WebChromeClient() {
           public void onProgressChanged(WebView view, int progress) {
            MainActivity.this.setProgress(progress * 1000);
           }
         });
         webView.setWebViewClient(new WebViewClient() {
           public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
             Toast.makeText(MainActivity.this, "Oh no! " + description, Toast.LENGTH_SHORT).show();
           }
         });

         webView.loadUrl("file:///android_asset/www/index.html");   
}

このコードを試してみますが、エラーがあります:-

Multiple markers at this line
    - WebViewClient cannot be resolved to a type
    - The method setWebViewClient(WebViewClient) in the type WebView is not applicable for the arguments (new 
     WebViewClient(){})
4

1 に答える 1

1

index.htmlJavaScript コードが含まれている場合は、次を試してください。

WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
于 2013-05-03T16:26:26.367 に答える