опыта, для отображения вёрстки при ошибке с кнопкой "Повторить" для фрагмента.
Пока что, самый удобный и оптимальный вариант это в layout.xml использовать include и скрывать/показывать вёрстку, а автоматизировать можно связав BaseFragment с BaseViewModel.
Во viewModel держим и управляем LiveData со стейтами экрана, там же делаем функцию fetch() для выполнения действия по нажатию кнопки "Повторить" и реализуем эту функцию в рабочем ViewModel.
А в BaseFragment в конструктор передаём layout и с помощью findViewById() пытаемся найти include. Если он есть, то будем работать с ним, если нет, то ничего не делаем. На стейты подписываемся тут же, в BaseFragment.
Таким образом всё автоматизировано, только в каждый layout придётся добавлять include.
Хорошее ли это решение и какие лучше, подскажите, пожалуйста?
А если в layout активити сунуть?
Dialog Fragment позволит избавиться от include и от гемора с контролем UI
Он будет рисоваться поверх фрагмента во весь экран и его нельзя будет закрыть свайпом?
Спасибо. Но бывают случаи, когда надо отобразить эту вёрстку под тулбаром, с DialogFragment, как я понимаю, так не получится сделать
DialogFragment отображается как и обычный диалог, на часть экрана, затемняя то, что под ним
Так вродеж лайвдата уже не модно стильно молодежно?
Почему? Всё ещё таки да.
Можно StateFlow, просто особо сути не меняет, поэтому я написал про лайвдату
Да вроде норм если тебе прям по все аппке размазывать надо
А не проще ли просто кастомный компонент создать и его и добавлять вместо include? С необходимыми методами (типо fetch)
Чтоб не добавлять в вёрстку ручками, создать метод, который из кода создаёт
А какой от этого профит? Тут всё связано под капотом в BaseFragment и BaseViewModel, а в кастом вью придется передавать стейт
Например? По id контейнера куда надо добавить?
Так и там можно связать. Просто в наследнике указываешь свою view, а в базовом объявляешь и вызываешь то что хочешь, если она не null. Профит наверное в большем удобстве и чуть большей гибкости
Передаёшь root к которому хочешь прикрепить и прикрепляешь)
Спасибо, вроде понял про что ты. Ну хз, мне кажется шило на мыло получается
По дереву лишний раз не проходишься, экономишь драгоценные ресурсы)
Обсуждают сегодня