1

スプラッシュ画面の背後で Android で WebView を実行し、ページの読み込みが完了したら WebView を表示したいと考えています。

以下は、私が持っているコードの抜粋です。

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.splash);
    setContentView(R.layout.main);
    mWebView = (WebView) findViewById(R.id.webview);    
    mWebView.getSettings().setJavaScriptEnabled(true);    
    mWebView.loadUrl(url);
    mWebView.setWebViewClient(new webviewclient());
   }

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

現在、スプラッシュ画面が一瞬表示された後、WebView が表示され、ページの読み込みが開始されます。

これを非同期に変換する方法に関する提案はありますか?

4

2 に答える 2

1

非同期で何かをしたいときはいつでも、Android AsycTaskが最善の策であり、簡単な出発点です。http://developer.android.com/reference/android/os/AsyncTask.html

onCreateでスプラッシュ画面を設定し、asyncTaskを実行してWebビューをロードします。次に、onPostExecuteで、ContentViewをWebビューに設定できます。

お役に立てば幸い

于 2012-05-26T16:11:55.620 に答える
0

これは最もクリーンな答えではないかもしれませんが、基本的に同じスプラッシュ画像を表示する WebView の上に画像ビューを配置し、WebView の進行状況チェックを実行し、WebView が 100% に達したときにのみ ImageView を画面から閉じることができます。

進行状況の確認/実装へのリンクは次のとおりです: Android WebView 進行状況バー

于 2012-05-24T15:41:58.660 に答える