I'd like to change the default button styling on an alert dialog.
The standard Alert Dialog Fragment (in Android L) looks like this:
I'd like the right button to be styled as a normal button instead of a borderless button. Google itself seems to use this pattern in various dialogs, such as:
Does anyone know if this is possible, without recreating the whole dialog from scratch?
You can style the button in the theme with attributes: android:buttonBarPositiveButtonStyle
, android:buttonBarNegativeButtonStyle
, and android:buttonBarNeutralButtonStyle
.
Ok, the issue is solved automagically by updating to the (just released) release 21. Now the buttons are automatically in primary color :-)
EDIT: They are not in primary color, but in Android's basic turquoise..
This solution is for changing button color with material effect in AppCompatDialogFragment
.
<android.support.v7.widget.AppCompatButton
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="20dp"
android:text="@string/buttin"
android:theme="@style/AppTheme.MyButton"
/>
Style file - v21
<style name="AppTheme.MyButton" parent="Theme.AppCompat.Dialog.Alert">
<item name="android:colorButtonNormal">@color/button_color</item>
<item name="android:textColor">@color/text_color</item>
</style>
Style file
<style name="AppTheme.MyButton" parent="Theme.AppCompat.Dialog.Alert">
<item name="colorButtonNormal">@color/button_color</item>
<item name="android:textColor">@color/text_color</item>
</style>