如何在Alert Dialog Builder中居中文本?

时间:2014-01-14 20:45:53

标签: java android android-alertdialog

我正在尝试将一些文本置于默认的Alert Dialog Builder中 到目前为止,这是我的代码,但默认为左侧。

            new AlertDialog.Builder(getActivity())
                    .setTitle("Well done!")
                    .setMessage("Message centered????")

                    .setPositiveButton("OK",
                            new DialogInterface.OnClickListener() {

                                @Override
                                public void onClick(DialogInterface dialog,
                                        int which) {
                                    // TODO Auto-generated method stub

                                }
                            })

                    .setIcon(R.drawable.img_ok)
                    .show();

        }

4 个答案:

答案 0 :(得分:11)

默认情况下,这段代码可以完成工作,而不会为AlertDialog.Builder提供自己的自定义视图。

  AlertDialog dialog = builder.show(); //builder is your just created builder
    TextView messageText = (TextView)dialog.findViewById(android.R.id.message);
    messageText.setGravity(Gravity.CENTER);
    dialog.show();

答案 1 :(得分:4)

不要设置消息,而是使用带有居中文字的AlertDialog.Builder.setView(View)的{​​{1}}

答案 2 :(得分:0)

你可以试试这段代码

public void Info(){
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Info Aplikasi");
    builder.setIcon(R.drawable.info_adp);
    builder.setMessage("Jakarta Hospital");
    builder.setCancelable(false);
    builder.setPositiveButton("Exit", null);
    AlertDialog dialog = builder.show();
    TextView messageView = (TextView)dialog.findViewById(android.R.id.message);
    messageView.setGravity(Gravity.CENTER);
}

答案 3 :(得分:0)

您可以尝试这种简单的方法:

textView.setWidth(ViewGroup.LayoutParams.MATCH_PARENT);
textView.setGravity(Gravity.CENTER);
alert.setView(textView);