Je veux que le texte du message dans ma boîte de dialogue pour être le centre de l'alignement.
Réponses
Trop de publicités?Bien sûr, vous pouvez toujours définir la gravité de l'original de l'affichage de texte. Cela vous permet de ne pas avoir à vous soucier de mise en forme et le rembourrage.
Par exemple
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);
Créez votre propre TextView de l'objet et de la fournir à popup constructeur de Vue:
AlertDialog.Builder popupBuilder = new AlertDialog.Builder(this);
TextView myMsg = new TextView(this);
myMsg.setText("Central");
myMsg.setGravity(Gravity.CENTER_HORIZONTAL);
popupBuilder.setView(myMsg);
Vous pouvez contrôler tous les autres paramètres de texte (style, couleur, taille ...). Pour contrôler les marges, vous pouvez créer par programmation LinearLayout, ensemble LayoutParams, puis mettre TextView en elle.
Construction de Chase réponse, voici comment centrer aussi le titre. Je pense que c'est le moyen le plus facile. Pourquoi android n'est pas le centre de défaut ou de faire une simple constructeur param est au delà de moi.
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);
}
nous pouvons l'utiliser comme.
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);
}