2015-02-24 2 views
0

Я пытаюсь анимировать переход активности. В основном то, что я хочу сделать, это следующее:Изменение активности андроидной активности

1.) Выполните круговое клип определенного зрения

2.) Начните выцветанию переход

3.) выполнять круговое выявить на новый деятельности конкретного вида.

Моей реакция коленного рефлекса была использовать метод

ActivityOptionsCompat.makeSceneTransitionAnimation(getActivity(), R.transition.myanim, 0) 

и пропуск, расслоение в мой начале деятельности умысел. Тем не менее, я не могу получить анимацию до на самом деле работы. Анимация я пробуя это следующий переход:

<?xml version="1.0" encoding="utf-8"?> 
<transitionSet xmlns:android="http://schemas.android.com/apk/res/android" android:transitionOrdering="sequential"> 
<transition class="com.my.app.transition.RevealTransition" android:transitionVisibilityMode="mode_out"/> 
<fade/> 
<targets> 
    <target android:targetId="@id/startButton"/> 
</targets> 

Вместо этого я просто не получаю анимации. Просто переключитесь на новую активность. Документация кажется ... ограничена, поэтому я надеюсь, что кто-то здесь может мне помочь. Благодарю.

Примечание: я украл класс RevealTransition из сообщения в блоге Google - я не думаю, что это проблема, потому что угасание тоже не срабатывает.

ответ

0

Вы действительно установили переход для использования?

на финише или startActivity вы должны вызвать overridePendingTransition своей деятельности, чтобы явно установить переходы

public void overridePendingTransition(int enterAnim, int exitAnim) 

f.ex, если у вас есть «enter_from_right» анимации и «exit_to_left» определены, и вы хотите, чтобы выйти из текущего Деятельность с этими анимациями:

finish(); 
overridePendingTransition(R.anim.enter_from_right, R.anim.exit_to_left); 
+0

В чем смысл вызова makeSceneTransitionAnimation? Похоже, если вам нужно также вызвать overridePendingTransition, упомянутый выше вызов ничего не делает. Извините - я не указал в сообщении, но параметр/пакет makeSceneTransitionAnimation принимает выход и вводит анимацию. –

+0

Я немного незнакома с makeSceneTransitionAnimation, но, похоже, это уровень API 21. Вы можете вызвать 'toBundle()' в объект 'ActivityOptions', возвращенный' ActivityOptions.makeSceneTransitionAnimation', и использовать этот пакет как набор опций в качестве аргумента для 'startActivity (Intent intent, Bundle options)'. Конечно, вы не вызываете overridePendingTransition, если вы так делаете. –

+0

Я должен был быть более ясным в OP (теперь будет редактировать), но это то, что я делаю. –

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