Переход общего элемента с фрагментами с помощью add() вместо replace()?
Я пытаюсь сделать общий переход между фрагментами, все отлично работает при использовании replace()
для добавления второго фрагмента, однако в кодовой базе add()
используется много, но при использовании этого перехода просто переходит к конечные значения
Возможно ли иметь переход между добавленными фрагментами?
Благодаря
@Override
public void onClick(View v) {
setSharedElementReturnTransition(TransitionInflater.from(getActivity())
.inflateTransition(android.R.transition.move));
FragmentB secondFragment = new FragmentB();
secondFragment.setSharedElementEnterTransition(TransitionInflater.from(getActivity())
.inflateTransition(android.R.transition.move));
getFragmentManager().beginTransaction()
.add(R.id.container, secondFragment)
.addToBackStack(null)
.addSharedElement(imageView, imageView.getTransitionName())
.commit();
}
Ответы
Ответ 1
так как система не проходит через onPause из первого фрагмента, что не произойдет. потому что, когда вы добавляете новый фрагмент, новый фрагмент входит в верхнюю часть старого фрагмента.
но вы можете подделать его, хотя у вас будет больше кода!
приведен пример:
https://github.com/Kisty/FragmentTransitionExample
и видео, не относящееся к делу, но помогает вам понять:
https://www.youtube.com/watch?v=CPxkoe2MraA