2016-10-06 5 views
2

У меня есть RecyclerView внутри фрагмента в представлении и элемент совместного доступа из элемента в RecyclerView в DetailActivity, содержащий фрагмент. Я устанавливаю переход внутри DetailActivity для входа и выхода фрагмента.Переходы с общим элементом не работают при выходе из фрагмента в активность, содержащую Viewpager

public static void sharedTransitionReceiver(Activity activity, Fragment fragment) { 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
     activity.getWindow().getEnterTransition().setDuration(500); 
     Slide slideTransition = new Slide(Gravity.START); 
     slideTransition.setDuration(500); 
     fragment.setReenterTransition(slideTransition); 
     fragment.setExitTransition(slideTransition); 
     fragment.setSharedElementEnterTransition(new ChangeBounds()); 
    } 
} 

Это работает нормально, но когда я вернуться обратно к предыдущей деятельности, содержащей экзит анимация ViewPager не работает и деталь будет не одушевляет обратно в исходное положение.

+0

Call setSharedElementReturnTransition(), чтобы указать, как представление перемещается со второго фрагмента назад к первому фрагменту, когда пользователь нажимает кнопку «Назад». –

+0

Не использовать это все равно. – mjosh

+0

@BurakCakir Согласно анимации возврата документов, по умолчанию используется обратная анимация записи. – mjosh

ответ

3

После 4 часов усилий я не могу представить, чтобы ответ был таким простым. Я звонил finish() после того, как выложил каждый фрагмент из стека, вместо этого я должен использовать supportFinishAfterTransition();.

+0

Можете ли вы посоветовать мне, как выполнять фрагмент для действия общего элемента Переходы? – AndroidGeeks

 Смежные вопросы

  • Нет связанных вопросов^_^