Java 仅显示1个按钮的对话框

Java 仅显示1个按钮的对话框,java,android,android-studio,Java,Android,Android Studio,通过阅读officila android开发者网站上的说明,我制作了一个应用程序,并使用DialogFragment在其中插入了一个对话框。我制作了一个有3个按钮的对话框,每个按钮都有不同的功能。但是,当我运行它时,只显示1个按钮(mxed分数)。为什么会这样? 代码如下: package com.example.fractionscalculator; import android.app.AlertDialog; import android.app.Dialog; import andr

通过阅读officila android开发者网站上的说明,我制作了一个应用程序,并使用DialogFragment在其中插入了一个对话框。我制作了一个有3个按钮的对话框,每个按钮都有不同的功能。但是,当我运行它时,只显示1个按钮(mxed分数)。为什么会这样? 代码如下:

package com.example.fractionscalculator;

import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.widget.TextView;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatDialogFragment;
import androidx.fragment.app.DialogFragment;

public class specifyInput extends AppCompatDialogFragment {
    @NonNull
    @Override
    public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setMessage("Please specify the type of number you entered.");
        builder.setTitle("Set format");
        builder.setNeutralButton("Regular Fraction", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                ((MainActivity)getActivity()).getandsetText1("frac");

            }
        });
        builder.setNeutralButton("Whole Number", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                ((MainActivity)getActivity()).getandsetText1("whole");
            }
        });
        builder.setNeutralButton("Mixed Fraction", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
                ((MainActivity)getActivity()).getandsetText1("mixed");
            }
        });
        return builder.create();
    }
}


我是java和android的初学者,所以如果这是一个愚蠢的错误,请对我宽容一些。

你可以使用3种预定义的操作按钮,比如:你已经使用了
setNeutralButton
3次它覆盖了该按钮,只显示了1次

dialog.setPositiveButton(..);
dialog.setNegativeButton(..);
dialog.setNeutralButton(..);
根据文件:

您可以添加三个不同的操作按钮:

  • 肯定:您应该使用此选项接受并继续操作(“确定”操作)
  • 否定:您应该使用此选项取消操作
  • 中立:当用户可能不想继续操作,但不一定要取消时,应使用此选项。它出现在正极和负极按钮之间。例如,操作可能是“稍后提醒我”

因为您要设置两次空档按钮