У меня есть приложение чата, и оно имеет 3 файла, скажем:
- chat_screen - основная структура страницы
- chat_message - каждое сообщение в чате является объектом класса ChatMessage
- chat_blo c - blo c материал. Он импортирует chat_message и поддерживает список _messages, который обновляется на основе вызовов сервера, а затем отправляется в поток.
chat_screen прослушивает этот поток, а затем использует ListView.builder для создания и добавления всех сообщения из списка _messages на экран.
В объекте состояния ChatMessage я создаю переменную _isDisabled для отключения пользовательского интерфейса сообщения после его использования. Но в конечном итоге происходит то, что в момент получения нового сообщения оно сбрасывает значение _isDisabled.
Я пытался сделать его stati c, но новые экземпляры будут делиться этим. Я прочитал о ключах, поэтому попытался добавить к нему UniqueKey, но это тоже не сработало.