如何在警报对话框中更改复选框列表的文本大小

时间:2014-04-14 06:11:03

标签: java android checkbox alertdialog

我正在处理一个包含多个复选框的警告对话框。如何更改复选框列表元素的文本大小? (我可以改变标题的大小和按钮就好了)

boolean[] allBoolean = {true, true, true, true, true, true, true, true};

AlertDialog.Builder prompt = new AlertDialog.Builder(Class.this);
prompt.setTitle("Title");
prompt.setMultiChoiceItems(all, allBoolean, new DialogInterface.OnMultiChoiceClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which, boolean isChecked) {
        allBoolean[which] = isChecked;
    }
});
prompt.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) { 
        //do nothing
    }
});
prompt.setPositiveButton("Select", new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int which) { 
        //do something
    }
});

2 个答案:

答案 0 :(得分:0)

alertDialog.show();
WindowManager.LayoutParams lp = new WindowManager.LayoutParams();

lp.copyFrom(alertDialog.getWindow().getAttributes());
lp.width = 150;
lp.height = 500;
lp.x=-170;
lp.y=100;
alertDialog.getWindow().setAttributes(lp);

答案 1 :(得分:-1)

您可以非常轻松地访问邮件的TextView,然后更改它的大小。我测试了更大的尺寸,但你可以使用你想要的任何尺寸。文本将像现在一样很好地滚动。视图的id是android.R.id.message:

AlertDialog dialog = new AlertDialog.Builder(this).setMessage("Hello world").show();
TextView textView = (TextView) dialog.findViewById(android.R.id.message);
textView.setTextSize(40);

这可能是一个更清晰的解决方案,但我不确定TextView是否可能为null的风险。