Центральное сообщение в диалоговом окне андроида

Я хочу, чтобы текст сообщения в моем диалоговом окне был выровнен по центру.

Solutions Collecting From Web of "Центральное сообщение в диалоговом окне андроида"

Создайте свой собственный объект TextView, а затем поставьте его в popup-конструктор в виде View:

AlertDialog.Builder popupBuilder = new AlertDialog.Builder(this); TextView myMsg = new TextView(this); myMsg.setText("Central"); myMsg.setGravity(Gravity.CENTER_HORIZONTAL); popupBuilder.setView(myMsg); 

Вы можете управлять всеми другими текстовыми параметрами (стиль, цвет, размер …). Чтобы управлять полями, вы можете программно создать LinearLayout, установить LayoutParams и затем поместить в него TextView.

Конечно, вы всегда можете установить серьезность исходного текстового вида. Это позволяет не беспокоиться о форматировании и дополнении.

Например

 AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Title"); builder.setMessage("Message"); builder.setPositiveButton("OK", null); AlertDialog dialog = builder.show(); // Must call show() prior to fetching text view TextView messageView = (TextView)dialog.findViewById(android.R.id.message); messageView.setGravity(Gravity.CENTER); 

Исходя из ответа Чейза, давайте также заострить название. Я думаю, что это самый простой способ. Почему андроид не центрируется по умолчанию или делает его простым параметром конструктора вне меня.

 AlertDialog.Builder builder = new AlertDialog.Builder(context); builder.setTitle("My Title"); builder.setMessage("My message"); builder.setPositiveButton("OK", listener); AlertDialog dialog = builder.show(); // Must call show() prior to fetching views TextView messageView = (TextView)dialog.findViewById(android.R.id.message); messageView.setGravity(Gravity.CENTER); TextView titleView = (TextView)dialog.findViewById(context.getResources().getIdentifier("alertTitle", "id", "android")); if (titleView != null) { titleView.setGravity(Gravity.CENTER); } 

Мы можем использовать как.

 public static void showAlert(Activity activity, String message) { TextView title = new TextView(activity); // You Can Customise your Title here title.setText("Your Title Here"); //title.setBackgroundColor(Color.DKGRAY); title.setPadding(10, 10, 10, 10); title.setGravity(Gravity.CENTER); title.setTextColor(Color.WHITE); title.setTextSize(20); AlertDialog.Builder builder = new AlertDialog.Builder(activity); builder.setCustomTitle(title); //builder.setIcon(R.drawable.alert_36); builder.setMessage(message); builder.setCancelable(false); builder.setNegativeButton("OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { dialog.cancel(); } }); AlertDialog alert = builder.show(); TextView messageText = (TextView)alert.findViewById(android.R.id.message); messageText.setGravity(Gravity.CENTER); messageText.setTextColor(Color.RED); } 

Просто используйте этот метод, и заголовок вашего диалога и сообщение появятся в центре:

Public static void openDialog (контекстный контекст, сообщение String) {

  TextView title = new TextView(context); // You Can Customise your Title here title.setText("Information Message"); title.setBackgroundColor(Color.BLACK); title.setPadding(10, 15, 15, 10); title.setGravity(Gravity.CENTER); title.setTextColor(Color.WHITE); title.setTextSize(22); AlertDialog alertDialog = new AlertDialog.Builder(context).create(); alertDialog.setCustomTitle(title); alertDialog.setMessage(message); alertDialog.setButton("OK", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { } }); alertDialog.show(); // You Can Customise your Message here TextView messageView = (TextView) alertDialog .findViewById(android.R.id.message); messageView.setGravity(Gravity.CENTER); } 

Попробуйте это в своем TextView:

 android:gravity = "center_vertical|center" 

Вы можете попробовать этот код

 public void Info(){ AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Info Aplication"); 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.findViewByI(android.R.id.message); messageView.setGravity(Gravity.CENTER); }