Android 如何将警报对话框按钮向左对齐?
我想创建一个带有ltr按钮的警报对话框。但我们似乎无法访问积极的按钮细节 这是为了将按钮对齐到中心,但我想将其对齐到左侧Android 如何将警报对话框按钮向左对齐?,android,android-alertdialog,Android,Android Alertdialog,我想创建一个带有ltr按钮的警报对话框。但我们似乎无法访问积极的按钮细节 这是为了将按钮对齐到中心,但我想将其对齐到左侧 我只是检查了堆栈,没有找到任何内容。我不想为dialog创建自定义的_layout.xml。这是您发布的链接的答案。您需要将布局参数的权重从10更改为-10,以便从中心向左移动 AlertDialog alertDialog = new AlertDialog.Builder(getActivity()).create(); alertDialog.setTitle("T
我只是检查了堆栈,没有找到任何内容。我不想为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还没有尝试过,但如果没有,那就寻找新的帖子。这是一个非常具体问题的解决方案,因此如果您在较新的帖子上看到通用解决方案会更好。我认为这个答案不值得编辑。