0

最近、DialogではなくDialogFragmentを拡張するProgressDialogを使用するアプリを変換しようとしています。

どのようにできますか

  1. DialogFragmentを拡張するカスタムダイアログクラスを作成する
  2. 次に、アクティビティからこのクラスを呼び出してダイアログをロードします

超基本的な例を見ることができますか?オーバーライドするメソッドは何ですか?そして、コンストラクターはどうですか?

今、これは私がしていることです(古い方法):

private MyProgressDialog progressDialog = new MyProgressDialog(
                    getActivity());
progressdialog.show();
4

1 に答える 1

3

では、進行状況ダイアログのフラグメントが必要ですか?

実はとても簡単です。DialogFragmentsは、ダイアログをラップする単なるフラグメントであるため、DialogFragmentのonCreateDialogメソッドで通常どおりダイアログを作成する必要があります。

例えば

class ProgressDialogFragment extends DialogFragment{
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        ProgressDialog dialog = new ProgressDialog(getActivity());
        dialog.setMessage("Loading");
        return dialog;
    }
}

そして、DialogFragmentを表示するには:

mButton = (Button)getView().findViewById(R.id.button1);
mButton.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        new ProgressDialogFragment().show(getFragmentManager(), "MyProgressDialog");
    }
});
于 2012-10-19T06:46:56.573 に答える