Android 如何将警报对话框按钮向左对齐?

Android 如何将警报对话框按钮向左对齐?,android,android-alertdialog,Android,Android Alertdialog,我想创建一个带有ltr按钮的警报对话框。但我们似乎无法访问积极的按钮细节 这是为了将按钮对齐到中心,但我想将其对齐到左侧 我只是检查了堆栈,没有找到任何内容。我不想为dialog创建自定义的_layout.xml。这是您发布的链接的答案。您需要将布局参数的权重从10更改为-10,以便从中心向左移动 AlertDialog alertDialog = new AlertDialog.Builder(getActivity()).create(); alertDialog.setTitle("T

我想创建一个带有ltr按钮的警报对话框。但我们似乎无法访问积极的按钮细节

这是为了将按钮对齐到中心,但我想将其对齐到左侧


我只是检查了堆栈,没有找到任何内容。我不想为dialog创建自定义的_layout.xml。

这是您发布的链接的答案。您需要将布局参数的权重从10更改为-10,以便从中心向左移动

 AlertDialog alertDialog = new AlertDialog.Builder(getActivity()).create();
 alertDialog.setTitle("Title");
 alertDialog.setMessage("Message");

 alertDialog.setButton(AlertDialog.BUTTON_POSITIVE, "Yes",
             new DialogInterface.OnClickListener() {
                  public void onClick(DialogInterface dialog, int which) {
                            dialog.dismiss();
                        }
                    });

alertDialog.show();

Button btnPositive = alertDialog.getButton(AlertDialog.BUTTON_POSITIVE);
Button btnNegative = alertDialog.getButton(AlertDialog.BUTTON_NEGATIVE);

LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) btnPositive.getLayoutParams();

//Changing the weight to negative pushes it to the left.
layoutParams.weight = -10;

btnPositive.setLayoutParams(layoutParams);
btnNegative.setLayoutParams(layoutParams);
希望有帮助

更多信息:现在我理解了这个问题,不,很遗憾,您不能更改顺序或按钮。顺序是负-中性-正。但是一旦你有了按钮,你就可以选择做什么了。例如,您可以使用负片按钮作为正片按钮,只需将其重命名为一行即可。

您可以尝试此操作

new AlertDialog.Builder(activity)
            .setNeutralButton("Your text", new DialogInterface.OnClickListener() {
                @Override
                public void onClick(DialogInterface dialog, int which) {
                    //do what you want
                }
            }).show();

为什么不呢,我试过了,效果很好。你试过别的吗?我们只是把按钮按到左边,但正按钮还是在负按钮的右边。我应该如何改变它们的位置@gaurav Mall那么你也应该添加一个中性按钮。@VikaS还没有尝试过,但如果没有,那就寻找新的帖子。这是一个非常具体问题的解决方案,因此如果您在较新的帖子上看到通用解决方案会更好。我认为这个答案不值得编辑。