0

私はこの問題に困惑しています。私のonBackPressed()方法は、必要なときに機能しません。asynctask.execute()私のシナリオは、アクティビティが開始されるとすぐに、onCreateを呼び出したために進行状況ダイアログが表示されるというものです。プロセスに時間がかかる場合、進行中のプロセス(サーバーからデータをダウンロードする)を閉じることができる機能をユーザーに提供したいので、戻るボタンが押されたときにダイアログを閉じてアクティビティを終了しようとしましたが、機能しません。

データを取得した後に通常戻るボタンを押すと、コントロールが下に流れているように見えonBackPressed()ます。

以下は私のコードスニペットです:

public void onBackPressed() {

            if(progressDialog != null && progressDialog.isShowing())
            {
                progressDialog.dismiss();
            }
                         finish();


        }

ユーザーにいつでもキャンセルする機会を与える他の方法はありますか。ユーザーが戻るボタンを押したときにプロセス全体とアクティビティを終了させる方法を教えてください。

4

1 に答える 1

0

進行状況ダイアログをキャンセルするには、進行状況ダイアログのキャンセルをtrueに設定してください。

dialog.setCancelable(true);
于 2013-03-20T09:27:52.163 に答える