Карты, которые я использую, имеют набор высоты 1dp с радиусом 4dp
<androidx.cardview.widget.CardView
android:elevation="1dp"
app:cardCornerRadius="4dp" />
, и они выглядят так:
Моя цель -изменить цвет фона программно в зависимости от действия, и вот что я пробовал до сих пор:
1)
Drawable background = cardView.getBackground();
background.setTint(mContext.getResources().getColor(R.color.selected_overlay));
cardView.setBackground(background);
ИЛИ
cardView.setCardBackgroundColor(mContext
.getResources()
.getColor(R.color.selected_overlay));
Результат:Очень странное сочетание цветных теней сверху и по бокам и серых теней снизу
2)
cardView.setBackgroundColor(mContext
.getResources()
.getColor(R.color.selected_overlay));
Результат:У карты больше нет радиуса
Как выглядит весь экран:
ПРИМЕЧАНИЕ. На экране отображается 1 элемент в горизонтальном представлении RecyclerView.RecyclerView показывает только 1 элемент за один раз.Три карты являются частью этой 1 записи списка.Сами карты не представляют элементы в списке.