Реализую вход в приложение через firebase(все работа с данными в ViewModel), для навигации использую NavController. Проблема двойного нажатия, когда нажимаю конпку вход и сразу же (быстро) кнопку регистрация, то происходит сбой (Navigation action/destination cannot be found from the current destination).
Нашел статью
https://stackoverflow.com/questions/51060762/illeg...
, в которой описывается решение, но в моем случае между кликом может пройти как больше секунды, так и меньше, все зависит от ответа с базы данных.
Я сделал функцию, которая блокирует все кнопки при нажатии на одну до конца операции в корутине.
Передаю из класса фрагмента функцию в параметр функции из вью модел, которая вызывает функцию из модел где берутся данные из firebase, по окончанию загрузки включаю кнопки той функцией, если не удалось войти, если удалось, то запускаю навигацию, после чего включаю кнопки
Что будет более правильным?