9

ダイアログの作成に問題があります。表示されますが、中は空で、空のボックスだけが表示されます。

ダイアログクラス:

public class SomeDialog extends DialogFragment{

@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
    LayoutInflater inflater = getActivity().getLayoutInflater();

    builder.setView(inflater.inflate(R.layout.somelayout, null));

    return super.onCreateDialog(savedInstanceState);
}
}

アクティビティで、オブジェクトを作成し、show メソッドを呼び出します。

SomeDialog obj = new SomeDialog();
obj.show(getFragmentManager(), "randomtag");
4

2 に答える 2

7
return super.onCreateDialog(savedInstanceState);

親メソッドを返しています。自分の を返す必要があります。への変更 :

 return builder.create();
于 2013-01-17T15:42:20.860 に答える
0

私の場合、問題がありました

public static DialogFragment newInstance(int param) {
    Bundle args = new Bundle();
    args.putInt(EXTRA_PARAM, param);

    DialogFragment fragment = new DialogFragment(); // Here is an error.
    fragment.setArguments(args);
    return fragment;
}

間違った行は次のように置き換える必要があります

DialogFragment fragment = new YourDialogFragment();
// Or YourDialogFragment fragment = new YourDialogFragment();
于 2016-11-23T19:21:49.790 に答える