2016-12-23 3 views
1

Я использую следующую тему для моего приложения:Изменение цвета фона деятельности тематической используя темы AppCompat в старых версиях Android

<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 

Я хотел бы изменить цвет фона. Для того, чтобы сделать это, согласно документации, которую я могу добавить следующее определение темы:

<item name="windowBackground">@color/windowBackground</item> 

К сожалению, однако, это только компилирует правильно, если (как это было предложено в ответ на No resource found that matches the given name: attr 'windowBackground') ограничить его, чтобы быть применяется к версиям Android с API 21 или выше.

Как я могу сделать эту работу над более ранними версиями Android? В идеале я хотел бы указать цвет фона для версий Android вплоть до API 16, который является моим текущим минимумом.

+0

'Android: windowBackground' был добавлен в [API-1] (https://developer.android.com/reference/android /R.attr.html#windowBackground). Почему вы думаете, что он работает только на API 21 или выше? – ianhanniballake

+0

@ianhanniballake - факт, что я использовал только «windowBackground», а не «android: windowBackground», что привело к ответу, с которым я связался, в котором говорилось, что требуется API 21 ... – Jules

ответ

2

Это правда, как вы сказали, что windowBackground так что вам просто нужно заменить его android:windowBackground, который для API 14 и выше

0

Вам нужно добавить

<item name="android:windowBackground">@color/window_background</item> 

к ../values- V21/styles.xml

0
// Your Problem is that You are use Theme.Appcompat then extends ActionBarActivity 

if you use AppcompatActivity then use 

<style name="MyTheme" parent="Theme.AppCompat.Light"> 
    <item name="android:windowBackground">@color/colorAccent</item> 
    </style>