Почему элемент в RecyclerView не отображается?

Добавление элемента происходит по следующей схеме: Activity в котором находится Adapter -> Activity2, в котором создается объект Adapter'a и добавляется элемент, при этом предыдущее Activity на паузе. При таких манипуляциях элемент и вправду попадает в список items в Adapter'е, но отображения не имеет. После пересоздания Activity так же нет отображения. введите сюда описание изображения

Код Adapter'a:

class TimerAdapter : RecyclerView.Adapter<RecyclerView.ViewHolder>() {

    private var items: ArrayList<Timer> = ArrayList()

    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
        return TimerViewHolder(
            LayoutInflater.from(parent.context).inflate(R.layout.list_item_timer, parent, false)
        )
    }

    override fun onBindViewHolder(holder: RecyclerView.ViewHolder, position: Int) {
        when (holder) {
            is TimerViewHolder -> {
                holder.bind(items[position])
            }
        }
    }

    override fun getItemCount(): Int {
        return items.size
    }

    class TimerViewHolder
    constructor(itemView: View) : RecyclerView.ViewHolder(itemView) {

        private val timerType: TextView = itemView.timer_type
        private val day: TextView = itemView.day
        private val time: TextView = itemView.time
        private val cardView: CardView = itemView.card_view
        private val colors: ArrayList<Int> = arrayListOf(
            R.color.timer_blue,
            R.color.timer_green,
            R.color.timer_orange,
            R.color.timer_purple,
            R.color.timer_red
        )

        fun bind(timer: Timer) {
            timerType.text = timer.quoteType
            day.text = timer.day
            time.text = timer.time
            cardView.setBackgroundColor(colors[(0..colors.size).random()])
        }
    }

    fun submitTimerInfo(quoteType: String, day: String, time: String) {
        val element = Timer(quoteType, day, time)
        if (!items.contains(element)) {
            items.add(element)
            notifyItemInserted(items.indexOf(element))
        }
    }
}

Вызов метода из условного Activity2:

private var timerAdapter = TimerAdapter()
timerAdapter.submitTimerInfo(timerType(), day, timePicker())

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

Автор решения: Dewerro

Как правильно порекомендовал ЮрийСПб в комментариях, ответ был найден в получении результата из Activity с помощью ActivityResultContracts.StartActivityForResult().

private val resultContract =
        registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result: ActivityResult ->
            if (result.resultCode == Activity.RESULT_OK && result.data != null) {
                // действие
            }
        }

Подробнее про ResultContract в этой документации от Google.

→ Ссылка