#android
Вопрос:
Когда я запускаю новое приложение в Android Studio с абсолютным минимумом предварительной настройки («Без активности»), я все равно получаю themes.xml
следующее:
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.MyApplication" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_500</item>
<item name="colorPrimaryVariant">@color/purple_700</item>
<item name="colorOnPrimary">@color/white</item>
<!-- Secondary brand color. -->
<item name="colorSecondary">@color/teal_200</item>
<item name="colorSecondaryVariant">@color/teal_700</item>
<item name="colorOnSecondary">@color/black</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
</style>
Итак, существует шесть цветов: Primary, PrimaryVariant, OnPrimary, Secondary, SecondaryVariant, and OnSecondary
ВОПРОС: Где я могу найти для каждого из этих шести цветов исчерпывающий список (классов, объектов, элементов объектов и т.д.) Того, для чего и когда этот цвет автоматически применяется parent theme
?
Существует вторая тема xml, которая также была автоматически сгенерирована и называется themes.xml(night)
.
<resources xmlns:tools="http://schemas.android.com/tools">
<!-- Base application theme. -->
<style name="Theme.MyApplication" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
<!-- Primary brand color. -->
<item name="colorPrimary">@color/purple_200</item>
<item name="colorPrimaryVariant">@color/purple_700</item>
<item name="colorOnPrimary">@color/black</item>
<!-- Secondary brand color. -->
<item name="colorSecondary">@color/teal_200</item>
<item name="colorSecondaryVariant">@color/teal_200</item>
<item name="colorOnSecondary">@color/black</item>
<!-- Status bar color. -->
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>
<!-- Customize your theme here. -->
</style>
Я полагаю, что это то, что выбирает Android, когда телефон работает в «Темной теме».
ВОПРОС: Что мне делать, когда для определенного элемента объекта (скажем, цвет thumb
конкретного switch
в конкретном activity
) Я хочу переопределить применимый цвет и установить его на свой собственный myColor
, но таким образом, чтобы также в разделе «Темная тема» применимый цвет был переопределен myColor
?
Удаление parent theme
, без сомнения, дало бы мне полную автономию, но это, по-видимому, невозможно.