Android DialogFragment - 使用onCreateView并在对话框中添加对话框按钮?

时间:2014-10-19 21:52:48

标签: android fragmentmanager dialogfragment

因为我想在对话框中使用FragmentManager,所以我使用onCreateView代替onCreateDialog

如果使用这种方法,我可以设置对话框的标题,但我找不到如何设置对话框按钮。通常我会在createDialog中使用AlertDialog ...

执行此操作

问题:是否可以使用onCreateView方法并使用对话框按钮?或者只能手动将按钮添加到我的视图资源中才能执行此操作?

 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
    View v = inflater.inflate(R.layout.dialog_exercise_info, null);
    // I could include the dialog buttons in the view
    // but can I somehow add buttons to the dialog directly?
    return v;
}

@Override
protected Dialog createDialog(final Bundle savedInstanceState, Activity activity)
{
    Dialog dialog = new Dialog(getActivity(), getTheme());
    dialog.setTitle(R.string.title_create_exercise);
    return dialog;
}

1 个答案:

答案 0 :(得分:1)

是和否......如果您没有使用AlertDialog,则必须在视图资源中手动创建对话框按钮。通过说你必须在你的视图资源中手动创建它们,我的意思是你必须把它放在xml布局文件中,或者你必须在onCreateView()中的代码中创建和添加它们,这是根据你的问题可以接受的。

用于直接设置AlertDialog中按钮(正面和负面)的便捷方法不是DialogFragment的一部分。您可以创建自己的便捷方法,但在这种情况下,您将返回手动执行这些方法。