2017-10-06 2 views
0

Ich habe zwei Aktivitäten (eine mit einem Recyclerview und eine DetailsAktivität, die mit startActvityForResult gestartet werden).Android Material Bewegung zwischen zwei Aktivitäten

Jetzt möchte ich eine Animation wie diese machen, wenn ich auf einen Listeneintrag klicke.

https://material.io/guidelines/motion/material-motion.html#material-motion-implications-of-motion

es wäre toll, wenn mir jemand eine einfache Möglichkeit, zu erkennen, dass zeigen.

+1

http://guides.codepath.com/android/shared-element-activity-transition hoffe, dieser Link wird Ihnen helfen –

+0

wie in der Vorschau ist dies keine gemeinsame Element-Animation. Es hat nur einen Übergang, der von der Position des angeklickten Elements ausgeht. –

Antwort

1

Was Sie suchen, heißt makeSceneTransitionAnimation. Es ist ziemlich einfach zu verwenden, Sie müssen ein gemeinsames Element auf beiden Bildschirmen haben, die eine gemeinsame XML-Tag "transitionName", z.

"android:transitionName="clock" 

und starten Sie dann die Aktivität mit dem makeSceneTransitionAnimation:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 
      Pair<View, String> p1 = Pair.create(clock, "clock"); 

      ActivityOptionsCompat options = ActivityOptionsCompat. 
        makeSceneTransitionAnimation((Activity) getContext(), p1); 

      mView.getContext().startActivity(intent, options.toBundle()); 

}

Edit: Ich schrieb dies, bevor Sie kommentierte, dass dies nicht das, was Sie suchen, obwohl ich Ich denke, Sie können den gezeigten Übergang mit makeSceneTransitionAnimation erreichen.

+0

Danke, es funktioniert :) ich mich machte die Arbeit mit 'startActivityForResult' mit folgenden Code: ' ActivityCompat.startActivityForResult (Aktivität, Absicht, CategoryDetailsActivity.EDIT_CATEGORY, options.toBundle()) ' –

+0

jetzt, wenn ich in der Nähe Diese Tätigkeit. Ich möchte die gleiche Animation rückwärts. Bist du jetzt heiß dafür? –

+1

Versuchen Sie, die Aktivität mit [supportFinishAfterTransition()] zu beenden (https://developer.android.com/reference/android/support/v4/app/FragmentActivity.html#supportFinishAfterTransition()) – Ole

Verwandte Themen