Переход к общему элементу не работает, если приложение открывается через глубокую ссылку - PullRequest
0 голосов
/ 10 февраля 2020

Я добавил переход к общему элементу для запуска действия B из действия A. Обычно переход к общему элементу работает, но не работает, если приложение запускается по глубокой ссылке и отображает представление действия A.

Режим запуска действия B : SingleTask

1 Ответ

0 голосов
/ 10 февраля 2020

Первое решение Один из способов решить эту проблему - запустить No UI Activity (RouterActivity) из deeplink и сформировать это действие, которое вы можете попробовать запустить с анимацией. Внутри действия маршрутизатора установите тему в onCreate.

 getTheme().applyStyle(R.style.NO_UI, true);

В стиле

  <style name="Theme.NO_UI" parent="AppTheme">
    <item name="android:windowIsTranslucent">true</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:windowContentOverlay">@null</item>
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowIsFloating">true</item>
    <item name="android:backgroundDimEnabled">true</item>
</style>

И запустите экран с анимацией из onCreate ().

Второе решение Определение анимации в стиле: определите новый стиль анимации в своих стилях. xml, как показано ниже

    <style name="MyTheme.Window" parent="@android:style/Animation.Activity">
      <item name="android:activityOpenEnterAnimation">@anim/your_desired_animation</item>

Затем установите этот стиль в теме (themes. xml ) следующим образом:

<style name="MyTheme" parent="@android:style/Theme">
      <item name="android:windowAnimationStyle">@style/MyTheme.Window</item>
</style>

И затем вы можете просто установить эти темы для каждого действия в AndroidManifest. xml следующим образом:

<activity 
  android:name="your_activity" 
  android:theme="@style/MyTheme">
</activity>
...