Intereting Posts
Перемещение изображения с помощью акселерометра Android Android Studio – SDK устарел или отсутствует шаблоны Mylib.so имеет перестановки текста. Это трата памяти и представляет угрозу безопасности. Пожалуйста исправьте Вкладки TabLayout не заполняют весь ActionBar Как связать Google +, подписанный с пользователями в Parse backend на Android? Crashlytic. Разработчик проекта неактивен Печать имени перечисления Изменение цвета строки состояния при входе в контекстный режим действия Позвонить по телефону нажмите на кнопку Всегда ли безопасно использовать контекст для активности в представлении? Как получить событие на анкете checkbox check change? ExpandableListView OnChildClickListener не работает Как установить edittext, чтобы показать кнопку поиска или ввести кнопку на клавиатуре? Android: как создать корпус Switch из этого? Мой BroadcastReceiver не получает намерения BOOT_COMPLETED после моих ботинок N1

Android v21 Theme.Appcompat цветной акцент игнорируется, никаких дополнений в диалоговом окне

Я использую ActionBarActivity из Android 5 SDK, и вот мой theme.xml для v21

<style name="AppTheme_Light" parent="Theme.AppCompat.Light.DarkActionBar"> <item name="android:colorPrimary">@color/abc1</item> <item name="android:colorPrimaryDark">@color/abc2</item> <item name="android:colorAccent">@color/abc3</item> </style> 

Но цвета игнорируются и заменяются стандартным тиановым цветом, и все диалоги появляются без заполнения.

Проблема: http://i62.tinypic.com/21cebcz.png

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

Редактировать:

Проблема с заполнением была вызвана fitsSystemWindow и я исправил ее, используя
этот вопрос. ,

Но проблема цвета акцента все еще существует, и это не только влияет на диалоги, но и на все приложение.

Solutions Collecting From Web of "Android v21 Theme.Appcompat цветной акцент игнорируется, никаких дополнений в диалоговом окне"

О цвете акцента. Вы используете тему AppCompat, чтобы удалить Android из пространства имен внутри своей темы.

 <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> 

О диалоговом окне. AppCompat не поддерживает его (как я знаю).
Вы можете использовать этот стиль в папке values-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> 

ОБНОВЛЕНИЕ 23/04/2015: ПОДДЕРЖКА БИБЛИОТЕКА V.22.1

Новая support library v22.1 работает с диалоговым support library v22.1 . Вы можете использовать android.support.v7.app.AlertDialog или новый AppCompatDialog .

Например:

 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(); 

И используйте такой стиль:

 <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> 

В противном случае вы можете определить в своей текущей теме:

 <style name="AppTheme" parent="Theme.AppCompat.Light"> <!-- your style --> <item name="alertDialogTheme">@style/AppCompatAlertDialogStyle</item> </style> 

А затем в вашем коде:

  import android.support.v7.app.AlertDialog AlertDialog.Builder builder = new AlertDialog.Builder(this); 

Обновить

Я применил успешно цвета для диалогов приложений AppCompat, возможно, будет полезно для кого-то:

Значения / style.xml

 <style name="Theme.MyApp" parent="Theme.AppCompat.Light"> ... /* for android 4 - 4.4, we not define alert dialogs style */ </style> 

Значения-V21 / style.xml

 <style name="Theme.MyApp" parent="Theme.AppCompat.Light"> ... /* define alert dialog style for android 5 */ <item name="android:alertDialogTheme">@style/Theme.AlertDialog</item> </style> 

  <style name="Theme.AlertDialog" parent="Theme.AppCompat.Light.Dialog"> <!--app abar color in Activties Task manager --> <item name="colorPrimary">@color/my_color</item> <!--copy/paste colors --> <item name="colorAccent">@color/my_color</item> <!--status bar color --> <item name="colorPrimaryDark">@color/my_color</item> </style> 

Текущая версия AppCompat не применяет раскраску к AlertDialogs.

Попробуйте использовать https://github.com/afollestad/material-dialogs , он отлично работает!