web-dev-qa-db-ja.com

FragmentクラスでProgressDialogを表示する

ProgressDialogクラス内でFragmentを表示しようとしています。次のコードはActivityクラス内でのみ機能しますが、Fragmentでは機能しません。誰かがこれで私を助けてくれますか?なぜこのProgressDialog実装はActivityではなくFragment内でのみ動作するのでしょうか?

private class ProcessUpdateProfile extends
        AsyncTask<String, String, JSONObject> {

    private ProgressDialog nDialog;

    @Override
    protected void onPreExecute() {
        super.onPreExecute();
        nDialog = new ProgressDialog(PFragment.this); //Here I get an error: The constructor ProgressDialog(PFragment) is undefined
        nDialog.setMessage("Loading..");
        nDialog.setTitle("Checking Network");
        nDialog.setIndeterminate(false);
        nDialog.setCancelable(true);
        nDialog.show();

    }
}
29
Sini Inis

Fragmentでこれを試してください

 nDialog = new ProgressDialog(getActivity()); 
64
M D

ProgressDialogContext入力を取るので、オブジェクト作成でgetActivity()を使用します。

ProgressDialog dialog = ProgressDialog.show(getActivity(), "Loading...", "Please wait...", true);
12
navneet sharma