许久没用AlertDialog了,今天要做这么一个弹窗,只带一个“取消”按键,当然是居中比较好看。
记得以前用AlertDialog,布局是这样的:
要在下方居中一个按键,很简单了,只设置一个按键即可,没设置的按键不会占空间。
没想到,较新的安卓版本已经改成了这样:
即便我只设置一个按键,它也只是在它原本的位置,不受其他按键的影响。
根据Stack Overflow上网友的说法,应该是安卓L之后改动成这样的
折腾许久之后还是在Stack Overflow上找到的解决方案
https://stackoverflow.com/questions/30743038/align-alertdialog-buttons-to-center
代码如下:
dialog.show();
final Button positiveButton=dialog.getButton(AlertDialog.BUTTON_NEUTRAL);
LinearLayout.LayoutParams positiveButtonLL =(LinearLayout.LayoutParams)positiveButton.getLayoutParams();
positiveButtonLL.gravity=Gravity.CENTER;
positiveButtonLL.width=ViewGroup.LayoutParams.MATCH_PARENT;
positiveButton.setLayoutParams(positiveButtonLL);