0

我的对话框有问题。我想做类似安装的表格,询问输入/选择选项的问题。此时做了一个简单的对话框,显示带有微调器的布局。任何想法我应该怎么做才能在“下一步”按钮上创建新对话框(或者可能以某种方式更改当前对话框的布局?)问下一个问题?

图片:

在此处输入图像描述

我的代码:

public class Dialog_box extends SherlockDialogFragment
 {
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {

        final AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        final LayoutInflater inflater = getActivity().getLayoutInflater();
        builder.setView(inflater.inflate(R.layout.my_layout, null));
        builder
               .setTitle("Question I")
               .setPositiveButton(R.string.next, new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int id) {


                   }
               })
               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int id) {


                   }
               });
        return builder.create();
    }
}
4

1 回答 1

0

你可以这样做:

实现一个创建对话框并接收int问题编号的函数

createDialog(int questionNumber)

在这个函数中你可以有一个switch-case用于标题和内容的,然后switch设置下一步按钮来调用

dismiss();
createDialog(++questionNumber);

这将关闭当前的,并构建下一个。

第一个您可以使用不同的按钮调用createDialog(0);

此外,在此方法的最开始,您应该检查这是否是最后一个,假设您有 5 个对话框:

MAX_DIALOGS = 5;

if (questionNumber >= MAX_DIALOGS) {
    return;
}

您仍然必须对每个对话框进行编码,但无法绕过它。

于 2013-08-07T21:16:50.170 回答