Переключатель тем в приложении Android

В приложении есть RecyclerView, элементы которого имеют фон, который описан ниже в файле corner_bg.xml. Хочу сделать возможность выбора темы в приложении. Текущий и темный цвет. В темном будут другие цвета у элементов списка. Как это можно реализовать? Понятно что в style.xml нужно создать новую тему и как-то в активити переключать. А как сделать изменение фона у элементов списка?

<?xml version="1.0" encoding="utf-8"?>
<selector
    xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true">
        <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
            <corners
                android:radius="4dp"
                />
            <gradient
                android:angle="45"
                android:startColor="@color/colorPurple"
                android:endColor="@color/colorOrange"
                android:type="linear"
                />
            <padding
                android:left="0dp"
                android:top="0dp"
                android:right="0dp"
                android:bottom="0dp"
                />
        </shape>
    </item>
    <item>
        <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
            <corners
                android:radius="4dp"
                />
            <gradient
                android:angle="45"
                android:startColor="@color/colorOrange"
                android:endColor="@color/colorPurple"
                android:type="linear"
                />
            <padding
                android:left="0dp"
                android:top="0dp"
                android:right="0dp"
                android:bottom="0dp"
                />
        </shape>
    </item>
</selector>

Ответы (1 шт):

Автор решения: Danil Kyrgyzbaev

Так сделал в адаптере:

@Override
public void onBindViewHolder(@NonNull NoteViewHolder holder, int position) {
    holder.bind(sortedList.get(position));
    holder.itemView.setBackgroundResource(R.drawable.bacground_button);
}
→ Ссылка