У меня есть приложение для Android, которое состоит из 2 экранов: один для отображения списка элементов, а другой для отображения сведений об элементе, выбранном в списке.Оба экрана реализованы как Fragment
s, размещенные на Activity
.
Требования
- В верхней части фрагмента списка элементов я хотел бы использовать
AppBarLayout
длясделайте Toolbar
скрыть / показать при прокрутке списка. - Во фрагменте сведений об элементе я бы хотел отобразить изображение в
CollapsingToolbarLayout
.Это изображение относится к элементу, который был нажат в списке. - Между экраном списка и подробным экраном должен быть общий переход.
![Item detail screen](https://i.stack.imgur.com/O5jgL.jpg)
Вопрос
Как мне организовать макеты, чтобы при выборе элемента я мог переходить с AppBarLayout
на CollapsingToolbarLayout
в списке?
Что я пробовал
Использовать действие вместо фрагмента для подробного экрана.
Это самый простой способ: не сворачиваемая панель инструментов в списке действийи складная панель инструментов в подробном действии.Тем не менее, мне нужно иметь одинаковые BottomSheet и DrawerLayout на обоих экранах, и я пытаюсь перейти к подходу «одного действия».
Поместить общую панель инструментов в хост.подход, то же самое Toolbar
распределяется между 2 фрагментами.Также просто установить его по умолчанию ActionBar
с setSupportActionBar(Toolbar)
и, следовательно, иметь меню опций, стрелку вверх и значок гамбургера в ящике, обрабатываемый платформой.Недостатком является то, что я не вижу способа сделать общий элемент перехода от ImageView
в списке к ImageView
в CollapsingToolbarLayout
, который лежит в Activity. Надеть панель инструментов в каждомФрагмент
Создание каждого фрагмента с собственной панелью инструментов решает проблему перехода между ними.Но при таком подходе, как и когда я должен установить каждую панель инструментов в качестве действия ActionBar
?
Обратите внимание, что я также открыт для любого решения, использующего компоненты архитектуры Android ViewModel, Navigation и т.
Заранее спасибо за ваши ответы.