Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Cómo cambiar textcolor en AlertDialog

AlertDialog

Cómo cambiar el textcolor en un AlertDialog?

<item name="android:textColor">@color/black_text</item> 

Esto cambia el color del título solamente.

 ad = new AlertDialog.Builder((new ContextThemeWrapper(context, R.style.DialogTheme))); ad.setTitle(R.string.my_activ_remove_title_dialog); ad.setPositiveButton(R.string.my_activ_remove_dialog, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int arg1) { content.remove(position); notifyItemRemoved(position); notifyItemRangeChanged(position, content.size()); } }); ad.setNegativeButton(R.string.my_activ_cancel_remove_dialog, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int arg1) { } }); 

Alerd Dialog v2

2 Solutions collect form web for “Cómo cambiar textcolor en AlertDialog”

Para cambiar solo el color de la fuente, pruebe esto:

  AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle(Html.fromHtml("<font color='#FF7F27'>This is a test</font>")); builder.setPositiveButton(Html.fromHtml("<font color='#FF7F27'>Yes</font>"), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int arg1) { Log.e(LOG_TAG, "Yes"); } }); builder.setNegativeButton(Html.fromHtml("<font color='#FF7F27'>No</font>"), new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int arg1) { Log.e(LOG_TAG, "No"); } }); builder.create(); builder.show(); 

resultado:

Introduzca aquí la descripción de la imagen


Para cambiar el color de la fuente y el color de fondo del botón, intente esto:

  AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage(Html.fromHtml("<font color='#FF7F27'>This is a test</font>")); builder.setCancelable(false); builder.setNegativeButton("No", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { } }); builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { } }); AlertDialog alert = builder.create(); alert.show(); Button nbutton = alert.getButton(DialogInterface.BUTTON_NEGATIVE); //Set negative button background nbutton.setBackgroundColor(Color.MAGENTA); //Set negative button text color nbutton.setTextColor(Color.YELLOW); Button pbutton = alert.getButton(DialogInterface.BUTTON_POSITIVE); //Set positive button background pbutton.setBackgroundColor(Color.YELLOW); //Set positive button text color pbutton.setTextColor(Color.MAGENTA); 

Resultado:

Resultado:


Si desea cambiar el color del divisor, intente esto:

  AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setTitle("Test Title"); builder.setMessage(Html.fromHtml("<font color='#FF7F27'>This is a test</font>")); builder.setCancelable(false); builder.setNegativeButton("No", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { } }); builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int which) { } }); AlertDialog dialog = builder.create(); dialog.show(); try { Resources resources = dialog.getContext().getResources(); int alertTitleId = resources.getIdentifier("alertTitle", "id", "android"); TextView alertTitle = (TextView) dialog.getWindow().getDecorView().findViewById(alertTitleId); alertTitle.setTextColor(Color.MAGENTA); // change title text color int titleDividerId = resources.getIdentifier("titleDivider", "id", "android"); View titleDivider = dialog.getWindow().getDecorView().findViewById(titleDividerId); titleDivider.setBackgroundColor(Color.YELLOW); // change divider color } catch (Exception ex) { ex.printStackTrace(); } Button nbutton = dialog.getButton(DialogInterface.BUTTON_NEGATIVE); //Set negative button background nbutton.setBackgroundColor(Color.MAGENTA); //Set negative button text color nbutton.setTextColor(Color.YELLOW); Button pbutton = dialog.getButton(DialogInterface.BUTTON_POSITIVE); //Set positive button background pbutton.setBackgroundColor(Color.YELLOW); //Set positive button text color pbutton.setTextColor(Color.MAGENTA); 

Este es mi código de ejemplo, pero si quieres cambiar el color del divisor, considera que la parte del código comienza con "int titleDividerId".

Resultado:

Este es el resultado del código


Si desea personalizar el AlertDialog mucho. Por ejemplo, agregando algunas casillas de verificación con el color de fondo personalizado, utilice este enfoque:

 AlertDialog.Builder alert = new AlertDialog.Builder(this); LinearLayout mainLayout = new LinearLayout(this); mainLayout.setOrientation(LinearLayout.VERTICAL); LinearLayout layout1 = new LinearLayout(this); layout1.setOrientation(LinearLayout.HORIZONTAL); CheckBox cb1 = new CheckBox(getApplicationContext()); cb1.setText("Easy"); layout1.addView(cb1); layout1.setBackgroundColor(Color.BLUE); layout1.setMinimumHeight(50); LinearLayout layout2 = new LinearLayout(this); layout2.setOrientation(LinearLayout.HORIZONTAL); layout2.addView(new TextView(this)); CheckBox cb2 = new CheckBox(getApplicationContext()); cb2.setText("Normal"); layout2.addView(cb2); layout2.setBackgroundColor(Color.CYAN); layout2.setMinimumHeight(50); LinearLayout layout3 = new LinearLayout(this); layout3.setOrientation(LinearLayout.HORIZONTAL); CheckBox cb3 = new CheckBox(getApplicationContext()); cb3.setText("Hard"); layout3.addView(cb3); layout3.setBackgroundColor(Color.GREEN); layout3.setMinimumHeight(50); mainLayout.addView(layout1); mainLayout.addView(layout2); mainLayout.addView(layout3); alert.setTitle("Custom alert demo"); alert.setView(mainLayout); alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); alert.setPositiveButton("Done", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Toast.makeText(getBaseContext(), "done", Toast.LENGTH_SHORT).show(); } }); alert.show(); 

El resultado:

El resultado

En primer lugar, he creado un diseño principal (vertical) como se ve en el código. Luego, para cada una de las casillas de verificación he creado un diseño horizontal. En este caso, puede jugar con los colores y las fuentes de los elementos (casillas de verificación, elementos y etc.). Espero que ayude.

Después de crear el cuadro de diálogo:

 AlertDialog dialog = builder.create(); dialog.show(); Button buttonPositive = dialog.getButton(DialogInterface.BUTTON_POSITIVE); buttonPositive.setTextColor(ContextCompat.getColor(this, R.color.green)); Button buttonNegative = dialog.getButton(DialogInterface.BUTTON_NEGATIVE); buttonNegative.setTextColor(ContextCompat.getColor(this, R.color.red)); 
FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.