2017-06-26 1 views
0

Je voudrais utiliser ActivityOptionsCompat.makeSceneTransitionAnimation pour effectuer une transition de scène entre deux éléments de l'interface utilisateur, mais j'ai également besoin de démarrer plusieurs activités. Ce code provoque des problèmes (empêche la deuxième activité de démarrer même). Je peux démarrer les activités individuellement pour passer les options à l'activité correcte, mais cela a ses propres problèmes avec une interface utilisateur vacillante. Y a-t-il un autre moyen d'accomplir cela?Animation de transition de scène Android au démarrage de plusieurs activités

if (targetActivity == TargetActivity.HOMEPAGE) { 
     baseActivity.startActivity(homeIntent) 
    } else { 
     val targetIntent = argumentBuilder.toIntent(baseActivity, targetActivity.clazz) 
     val intents = arrayOf(homeIntent, targetIntent) 

     val options = ActivityOptionsCompat.makeSceneTransitionAnimation(baseActivity, view.targetUserImage, "transition_to_inbox") 
     baseActivity.startActivities(intents, options.toBundle()) 
    } 

Répondre

1

Ceci n'est pas pris en charge. Le cadre est conçu pour passer d'une activité à une autre au sein d'une même tâche. Si vous démarrez plusieurs activités, vous n'avez aucune idée de ce que vous voulez en ce qui concerne les éléments de l'interface utilisateur.

+0

Puis-je potentiellement faire quelque chose avec la construction artificielle du backstack de l'activité après le début de mon activité? Il y a un peu de détail à ce sujet ici, mais c'est un peu mince. https://developer.android.com/training/implementing-navigation/temporal.html –

+0

Vous pouvez le faire si vous utilisez des transitions de fragment au lieu des transitions d'activité. Malheureusement, vous ne pouvez pas chaîner les éléments partagés entre les activités. –

+0

J'ai compris, merci d'avoir répondu! Toujours bon d'avoir des nouvelles de quelqu'un à Google. –