4

次のコードを使用して、Webビューで単純なフラッシュベースのWebサイトを開いています。

Javaコード:

package com.sample.webview;

import android.app.Activity;
import android.app.ProgressDialog;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.Button;

public class SampleWebViewActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        final WebView webView = (WebView) findViewById(R.id.webview);

        final ProgressDialog progress = new ProgressDialog(this);
        progress.setMessage("loading");

        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setPluginsEnabled(true);
        webView.getSettings().setBuiltInZoomControls(true);

        webView.setWebViewClient(new WebViewClient() {

            @Override
            public void onPageStarted(WebView view, String url, Bitmap favicon) {
                super.onPageStarted(view, url, favicon);
                progress.show();
            }

            @Override
            public void onPageFinished(WebView view, String url) {
                super.onPageFinished(view, url);
                progress.dismiss();
            }
        });

        Button mButton = (Button) findViewById(R.id.button);
        mButton.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {   
    webView.loadUrl("http://www.fusioncharts.com/demos/features/#linkedcharts-for-easy-drill-down");
            }
        });   
    }
}

Main.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <Button
        android:id="@+id/button"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_margin="5dp"
        android:text="Load URL" />

    <WebView
        android:id="@+id/webview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_margin="5dp" />

</LinearLayout>

ページが完全に読み込まれ、下にスクロールして残りのコンテンツを表示しようとすると、[URLの読み込み]ボタンの上にWebビューが表示されます。スクリーンショットを確認してください:

ここに画像の説明を入力してください

次のようになります。

ここに画像の説明を入力してください

正しく機能するために何をすべきかを提案してください。

編集:最新バージョンのFlashPlayerとAdobeAirの両方がインストールされたGalaxyNote(OSv2.3.5)を使用しています。

4

2 に答える 2

2

私もこれを試しましたが、これを行う唯一の解決策は、xml で単一の webview のみを使用することだと思います。そのため、他のネイティブ コントロールはありません。

于 2012-07-06T06:05:14.687 に答える
0

これはAndroidでは本当に壊れています。トップバーでビルドを使用しようとすると、フラッシュの背後にも表示されます。フラッシュから離れて(遠くに)行くことを強くお勧めします。グーグルグループとスタックオーバーフローについていくつかの議論がありますが、すべてが良い結果なしで終わります。私が見つけた唯一の良い提案は、他のフラッシュコンポーネントをカバーするためにフラッシュを使用することでした= /

于 2012-07-06T07:31:07.587 に答える