Я пытаюсь изменить цвет временной шкалы в зависимости от положения и статуса адаптера. Но это не работает. Я пытаюсь это динамически, используя следующие условия:
private fun setLineColor(holder: TimeLineViewHolder, position: Int, status: OrderStatus) {
when (position) {
0 -> {
when (status) {
OrderStatus.COMPLETED -> holder.timeline.setEndLineColor(R.color.colorAccent, 1)
OrderStatus.INACTIVE -> holder.timeline.setEndLineColor(R.color.grey_color, 1)
OrderStatus.ACTIVE -> holder.timeline.setEndLineColor(R.color.grey_color, 1)
}
}
mFeedList.size - 1 -> {
when (status) {
OrderStatus.COMPLETED -> holder.timeline.setStartLineColor(R.color.colorAccent, 2)
OrderStatus.INACTIVE -> holder.timeline.setStartLineColor(R.color.grey_color, 2)
OrderStatus.ACTIVE -> holder.timeline.setStartLineColor(R.color.grey_color, 2)
}
}
else -> {
when (status) {
OrderStatus.COMPLETED -> {
holder.timeline.setStartLineColor(R.color.colorAccent, 0)
holder.timeline.setEndLineColor(R.color.colorAccent, 0)
}
OrderStatus.INACTIVE -> {
holder.timeline.setStartLineColor(R.color.grey_color, 0)
holder.timeline.setEndLineColor(R.color.grey_color, 0)
}
OrderStatus.ACTIVE -> {
holder.timeline.setStartLineColor(R.color.colorAccent, 0)
holder.timeline.setEndLineColor(R.color.grey_color, 0)
}
}
}
}
}
но цвет отображается только как серый. Также указано # 21
Я нашел так много запросов об этом в github, но он указывает на другую ссылку, но она также не работает. это ссылка
Единственное, что мне нужно сделать, - до текущей позиции мне нужен цвет Accent и после этого отключенный цвет. У кого-нибудь есть решение для этого?