SilverSalt
30.07.2020 16:44

Основные возможности электронных таблиц​

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
basik2017
22.02.2022 16:29

1-й Рустам

2-я Галина

3-й Эдуард

4-й Яков

5-я Карина

Объяснение:

Всего 5 бегунов.

Бегун       Номер по финишированию

Рустам                        r≠2

Эдуард                      e=r+2

Яков                           a≠1

Галина                     g≠1; g≠5

Карина                      k=a+1

e=r+2 ⇒ r≤5-2=3 ⇒           ( r=1 и e=3 ) или ( r=3 и e=5 )

g≠1; g≠5 ⇒                          g=2 или g=3 или g=4

k=a+1 и a≠1 ⇒ a≤5-1=4  ⇒ ( a=2 и k=3 ) или (a=3 и  k=4 ) или ( a=4 и k=5 )

Только Рустам может быть на 1 месте. Значит Эдуард 3-й. Поскольку 3 место занято, то вариантов ( a=2 и k=3 ) или (a=3 и  k=4 ) не может быть. Значит Яков 4-й и Карина 5-я. Осталось свободное только 2-е место, значит Галина на 2-м.

0,0(0 оценок)
Ответ:
dulikosha20051
12.10.2021 02:35

ответ:Для начала в onCreate() уберите эту строку:

chatContainer.clear()

Нет смысла чистить только созданный пустой список. Дальше я бы вам советовал следующим образом. Для начала при объявлении адаптера не нужно сразу ему передавать список:

lateinit var adapter: RecyclerChatAdapter

Дальше как только ваш список заполнен вы это проверяете в цикле и инициализируете адаптер:

when {

   documentSnapshot != null -> {

       for (dc in documentSnapshot.documentChanges) {

           when (dc.type) {

               DocumentChange.Type.ADDED -> {

                   val chat = dc.document.toObject(Chat::class.java)

                   chatContainer.add(chat) // Добавление данных в Recycler

                   if(chatContainer.size == documentSnapshot.documentChanges)

                   {

                       adapter = RecyclerChatAdapter(chatContainer)

                   }

               }

           }

       }

   }

}

и дальше сеттинг адаптера как и было у вас в вашем примере. Так же второй вариант как решить вашу проблему, но не уверен что получится, можно в цикле там где вы выводите сообщение в лог обновлять адаптер:

for (i in chatContainer) {

   adapter.notifyDataSetChanged()

}

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота