我想创建一个带有ltr按钮的警报对话框。但似乎我们无法访问正面的按钮详细信息。
此answer用于将按钮居中对齐,但我想将其向左对齐。
我刚刚检查了堆栈,却没有找到任何涵盖此内容的内容。我不想为对话框创建custom_layout.xml。
答案 0 :(得分:1)
这是您发布的链接的答案。您需要将布局参数的权重从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);
希望有帮助!
更多信息:由于我已经理解了这个问题,很遗憾,您无法更改顺序或按钮。顺序为负-中性-正。但是一旦有了按钮,您就可以选择处理任何事情。例如,您可以将负号按钮用作正号,只需将其重命名为一行即可。
答案 1 :(得分:0)
您可以尝试这个;
new AlertDialog.Builder(activity)
.setNeutralButton("Your text", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
//do what you want
}
}).show();