Переходы SharedElements работают на Go, но не на Back - PullRequest
0 голосов
/ 26 апреля 2020

я учусь использовать анимацию sharedelements с компонентом навигации.

Это работает, когда я вызываю новый фрагмент, анимирую объекты, но не работает, когда я возвращаюсь sh.

мой код с точки зрения переработчика

    CardView cardviewBackgroundImage = view.findViewById(R.id.card_main_image);
    TextView storeName = view.findViewById(R.id.store_name);

    Map<View, String> transitionObjects = new HashMap<View, String>();
    transitionObjects.put(cardviewBackgroundImage, cardviewBackgroundImage.getTransitionName());
    transitionObjects.put(storeName, storeName.getTransitionName());

    FragmentNavigator.Extras extras = new FragmentNavigator.Extras.Builder()
            .addSharedElements(transitionObjects)
            .build();

    Bundle bundle = new Bundle();
    bundle.putString("subfix", subfix);
    bundle.putString("key", key);
    Navigation.findNavController(getView()).navigate(R.id.action_mainScreenFragment_to_placeViewFragment, bundle, null, extras);

и во фрагменте назначения мой код:

    @Override
public void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    postponeEnterTransition();
    sharedElementEnterTransition = TransitionInflater.from(getContext()).inflateTransition(android.R.transition.move);
    this.setSharedElementEnterTransition(sharedElementEnterTransition);


}


@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
    super.onViewCreated(view, savedInstanceState);

    String subfix = getArguments().getString("subfix");
    String key = getArguments().getString("key");

    CardView cardviewBackgroundImage = view.findViewById(R.id.card_main_image);
    TextView storeName = view.findViewById(R.id.store_name);
    cardviewBackgroundImage.setTransitionName("cardimage" + subfix + key);
    storeName.setTransitionName("storename" + subfix + key);
    startPostponedEnterTransition();
}

заранее спасибо!

...