首先写一个AlertDialog对话框: AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setSingleChoiceItems(arr, 0, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { alertDialog.dismiss(); curSel = which; tv.setText(arr[curSel]); } }); builder.setCancelable(true); alertDialog = builder.create(); alertDialog.show();
当对话框show()之后,
Window alertWindow = alertDialog.getWindow(); WindowManager windowManager = this.getWindowManager(); Display display = windowManager.getDefaultDisplay(); WindowManager.LayoutParams lParams = alertWindow.getAttributes(); lParams.height = (int) (display.getHeight() * 0.8); alertWindow.setAttributes(lParams);
使用窗口的的高度来布局, 0.8值得的是相对显示的比例