Я уже давно разрабатываю приложение для Android, и почти все, как это должно быть. Однако у меня есть некоторые проблемы с темами для некоторых просмотров. Мое приложение использует основанный тему AppCompat.Light
, как показано ниже:Android-приложение Theme overriding view theme
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar"></style>
Все выглядит белым и чистым, но у меня есть один конкретный экран, который является своего рода темный. Так что я создал следующую тему для некоторых EditText
полеев:
<style name="InputField" parent="Theme.AppCompat"></style>
для того, чтобы сделать поле ввода имеет белый цвет. Затем я запускаю приложение на устройствах с разными версиями Android. На смартфоне с Android 5.0.2 все выглядит так, как я ожидал. Однако на смартфоне с Android 4.4.4 ввод темный. Я даже пытался изменить тему на тему поля ввода в
<style name="InputField" parent="Theme.Holo"></style>
или
<style name="InputField" parent="@android:style/Widget.Holo.EditText"></style>
в values-v19
стилях, но она по-прежнему выглядит темной. Если изменить тему приложения для
<style name="AppBaseTheme" parent="Theme.AppCompat.NoActionBar"></style>
входных поля выглядят, как они должны, но все остальные приложения темно тематика, и это не то, что я хочу. Я могу только предположить, что тема приложения влияет на мою тему просмотров, хотя я явно указал тему, которую они должны использовать. Такое же поведение происходит на смартфоне с Android 4.2.2.
Но я попытался указать конкретные атрибуты типа '- @ android: color/white
' внутри моей темы, и все по-прежнему черное. –
Tinadm