8

Android API とスタックオーバーフローに関する他の投稿を見てきましたが、これを理解できませんでした。

私のアプリはファイルをSDカードにダウンロードします。ファイルのダウンロード中に「読み込み中...」ダイアログを表示し、ダウンロードが完了するとダイアログが消えるようにしたいと思います。これは、Android APIを使用して思いついたものです。

ProgressDialog pd = ProgressDialog.show(this,"","Loading. Please wait...",true);

//download file

pd.cancel();

ただし、ダイアログは実際には表示されません。デバッグすると、表示されていると主張しますが、明らかに画面には表示されません。

私に何ができる?

4

2 に答える 2

3

ダウンロード コードを別のスレッドで実行する必要があります。簡単な方法は、AsyncTaskを使用することです

使い方はこちらの記事も参考にしてください

于 2010-06-10T20:12:26.693 に答える
2

私は幾分似たようなシナリオを持っています.ゲームのフェーズのために物事がセットアップされている間、レベルの読み込みが一時停止します. ダイアログを起動し、コンテキストを渡されたスレッドでレベルの読み込みを開始し、スレッドの最後でこれを呼び出します。

mContext.runOnUiThread(new Runnable(){
    public void run() {
        mContext.mProgressDialog.dismiss();
    }
});

runOnUiThread() メソッドは非常に便利です。

于 2010-06-10T21:20:16.297 に答える