Анимация Android при запуске нового приложения
Я создаю новую пусковую установку для себя. теперь, когда я запускаю приложения из своей основной деятельности, у него есть анимация по умолчанию, которая ставит мою пусковую установку позади и всплывает новое приложение поверх нее. Вместо этого я хочу прикрепить свою собственную анимацию. Желательно, чтобы анимация материала по умолчанию раскрывалась с точки касания.
вещи, которые я пробовал до сих пор:
вам нужно использовать тему.Тема AppCompat (или потомок) с этой активностью на Android
http://tips.androidhive.info/2015/09/android-how-to-apply-material-design-theme/
<style name="swLaunch" parent="swLaunch.Base">
<item name="android:windowContentTransitions">true</item>
<item name="android:windowAllowEnterTransitionOverlap">true</item>
<item name="android:windowAllowReturnTransitionOverlap">true</item>
<item name="android:windowSharedElementEnterTransition">@android:transition/explode</item>
<item name="android:windowSharedElementExitTransition">@android:transition/explode</item>
<item name="android:windowEnterAnimation">@android:transition/explode</item>
<item name="android:windowExitAnimation">@android:transition/explode</item>
<item name="android:taskToFrontEnterAnimation">@android:transition/explode</item>
<item name="android:taskToBackEnterAnimation">@android:transition/explode</item>
<item name="android:taskToFrontExitAnimation">@android:transition/explode</item>
<item name="android:taskToBackExitAnimation">@android:transition/explode</item>
<item name="android:inAnimation">@android:transition/explode</item>
<item name="android:layoutAnimation">@android:transition/explode</item>
<item name="android:windowShowAnimation">@android:transition/explode</item>
<item name="android:activityOpenEnterAnimation">@android:transition/explode</item>
<item name="android:fragmentOpenEnterAnimation">@android:transition/explode</item>
</style>
вот как я запускаю свои приложения:
Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.google.android.gm");
if (launchIntent != null) {
startActivity(launchIntent);
}
1 ответов
чтобы оживить запуск активности:
int left = 0, top = 0;
int width = v.getMeasuredWidth(), height = v.getMeasuredHeight();
ActivityOptions opts = ActivityOptions.makeClipRevealAnimation(v, left, top, width, height);
startActivity(i, opts.toBundle());
здесь i
это намерение и v
- это посмотреть
чтобы оживить возвращение на главный экран (либо нажав кнопку "Домой" или кнопку "Назад")
@Override
public void onResume() {
super.onResume();
// override default transition animation
overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out);
}