2

私のウェブビュー(最初は見えない)はロードするURLを取得します:

@Override
public void onCreate(Bundle savedInstanceState){
    ...
    webView.loadUrl("some url");
    ...
}

次に、onClickListenerで、可視性を可視に変更し、何もロードされていないことを確認します。可視性をvisibleに設定してからURLをロードすると、問題なく動作しますが、ユーザーはurlがロードされている間しばらく待つ必要があります。すべてをプリロードして、すでにロードされているWebページを表示したいと思います。どうやってするの?Webviewは、表示されている場合にのみ何かをロードします...

PSところで、私はWebビューを表示し、translationYを画面の下に表示するのに十分な大きさに設定しようとしましたが、setTranslationY(0)を呼び出さない限り何もロードされません。... 何をすべきか?

PPSwebView.loadDataを呼び出してみました-同じ効果です。

4

1 に答える 1

1

これを試して:

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

    mWebView = (WebView) findViewById(R.id.webview);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.loadUrl("http://www.google.co.uk");
    mWebView.setWebViewClient(new HelloWebViewClient());
}

public void testing (View view){
    mWebView.setVisibility(View.VISIBLE);
}

screen_web.xml のボタン:

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="testing"
    android:text="Button" />

screen_web.xml の WebView:

    <WebView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webview"
    android:layout_width="fill_parent"
    android:layout_height="0dip"
    android:layout_weight="0.32"
    android:visibility="invisible" />

それは私にとってはうまくいきます。

于 2012-09-17T13:15:46.440 に答える