0

I want to show a Dialogfragment that appear from a SharedElement of my Activity. I tried SharedElementTransition and that not working. Here is the code:

FragmentManager fm = this.getSupportFragmentManager();
AddHistoryFragment mAddHistoryFragment = new AddHistoryFragment();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
    mAddHistoryFragment.setSharedElementReturnTransition(TransitionInflater.from(
                        this).inflateTransition(R.transition.change_image_trans));
    mAddHistoryFragment.setExitTransition(TransitionInflater.from(
                        this).inflateTransition(android.R.transition.fade));

    mAddHistoryFragment.setSharedElementEnterTransition(TransitionInflater.from(
                        this).inflateTransition(R.transition.change_image_trans));
    mAddHistoryFragment.setEnterTransition(TransitionInflater.from(
                        this).inflateTransition(android.R.transition.fade));
   fm.beginTransaction().add(mAddHistoryFragment,"add History")
                        .addSharedElement(ivAddExpense, ivAddExpense.getTransitionName()).commit();
   }else {
        mAddHistoryFragment.show(fm, "History");
   }

Thanks

Shohan Ahmed Sijan
  • 4,391
  • 1
  • 33
  • 39

1 Answers1

3

Sadly it won't work. Shared element transitions only work with replace fragment transaction, but DialogFragment.show() uses add transaction.

Also, see this question, maybe its solution will work for you Android - Shared Element Transition In Dialog

Community
  • 1
  • 1