About the color of the accent. You use the AppCompat theme to remove Android from the namespace inside your theme.
<style name="AppTheme_Light" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="colorPrimary">@color/abc1</item> <item name="colorPrimaryDark">@color/abc2</item> <item name="colorAccent">@color/abc3</item> </style>
About the dialog box. AppCompat does not support it (as I know).
You can try using this style in the values ββfolder-v21:
<style name="Theme" parent="FrameworkRoot.Theme"> <item name="android:alertDialogTheme">@style/Theme.AlertDialog</item> </style> <style name="Theme.AlertDialog" parent="android:Theme.Material.Light.Dialog.Alert"> <item name="android:colorPrimary">@color/demo_primary_color</item> <item name="android:colorPrimaryDark">@color/demo_colorPrimaryDark</item> <item name="android:colorAccent">@color/theme_accent_1</item> </style>
UPDATE 04/23/2015: SUPPORT LIBRARY V.22.1
The new support library v22.1 works with a dialog box. You can use android.support.v7.app.AlertDialog or the new AppCompatDialog .
For example:
import android.support.v7.app.AlertDialog AlertDialog.Builder builder = new AlertDialog.Builder(this, R.style.AppCompatAlertDialogStyle); builder.setTitle("Dialog"); builder.setMessage("Lorem ipsum dolor ...."); builder.setPositiveButton("OK", null); builder.setNegativeButton("Cancel", null); builder.show();
And use this style:
<style name="AppCompatAlertDialogStyle" parent="Theme.AppCompat.Light.Dialog.Alert"> <item name="colorAccent">#FFCC00</item> <item name="android:textColorPrimary">#FFFFFF</item> <item name="android:background">#5fa3d0</item> </style>
Otherwise, you can define in the current topic:
<style name="AppTheme" parent="Theme.AppCompat.Light"> <item name="alertDialogTheme">@style/AppCompatAlertDialogStyle</item> </style>
and then in your code:
import android.support.v7.app.AlertDialog AlertDialog.Builder builder = new AlertDialog.Builder(this);
Gabriele Mariotti Oct 28 '14 at 12:59 on 2014-10-28 12:59
source share