У меня есть два фрагмента Fragment A
и Fragment B
.Fragment A
имеет кнопку, которая заменяет Fragment A
на Fragment B
.Точно так же, Fragment B
имеет кнопку, которая заменяет себя на Fragment A
.Я хотел бы добавить анимацию кнопки в Fragment A
, расширяющуюся до Fragment B
, а затем Fragment B
уменьшающуюся до кнопки Fragment A
(когда кнопка в `Fragment B нажата).
Мне удалось сделать это с shared elements
.Я добавил transitionName
к кнопке и то же имя к ConstraintLayout
, содержащему кнопку в Fragment B
.Это гладко и красиво!
Теперь к проблеме: я хочу Fragment B
, чтобы скрыть панель действий, и Fragment A
, чтобы показать панель действий и, конечно, анимацию для плавной работы.Fragment B
в его методе onCreate
скрывает панель действий, вызывая getSupportActionBar().hide()
, и при переходе от Fragment A
к Fragment B
все выглядит хорошо.
Fragment A
в его методе onCreate
показывает панель действий.И когда я перехожу с Fragment B
на Fragment A
, я вижу, что Fragment B
не сжимается линейно в кнопку.Похоже, что когда рисуется панель действий, анимация понимает, что ей придется переместить кнопку, и тогда вы можете увидеть скачок в анимации.
Я пробовал разные вещи: анимировать панель действий и удалять анимацию, показывать и скрывать ее в onCreate
и в коде действия, который обрабатывает замены фрагментов ...
Что быправильный способ справиться с такого рода переходом с отображением и скрытием панели действий?
Спасибо, Марко