Shared element transitions between two activities in compose? - android

Is there currently anything that will allow to animate classic transition between the results list and details screen with shared element animation in Jetpack Compose?
Something like this.
I know of some experimental libraries that allows that, but they all work on single activity and I was wondering of more traditional approach with 2 activities.

The official Jetpack Compose roadmap states that shared element transition is currently in focus, so no official support yet.

Related

Jetpack compose rememberSwipeableState is internal

i want to create a swipable component using jetpack compose and as the document Gestures | JetpackCompose I should use rememberSwipeableState.
but when I want to use it I face this error:
Cannot access 'rememberSwipeableState': it is internal in 'androidx.compose.material3'
what should I do?
This issue is already being tracked here, issue in Material3 Compose. Alternatively as per their recommendation
For the time being, we recommend forking Swipeable if you need it in
M3!
you can use Material2 Compose Swipeable and fork it.

Difference between Jetpack Compose ModalDrawer and Scaffold Drawer?

What exactly is the difference between a ModalDrawer() and Scaffold(DrawerContent)? I seem to recall reading somewhere that the ModalDrawer() incorporates the navigation component. I also think I read that you can't use a ModalDrawer with Scaffold, or that they don't work well together.
When do you want to use one over the other?

Shared element transition in Jetpack compose

I wanted to animate my image logo from Screen A to Screen B. In XML based layouts it was possible using windowContentTransitions & transitionName. So I wanted to ask is something similar available in Jetpack Compose?
I have already seen this https://github.com/mobnetic/compose-shared-element
But, Is there something in-built functionality similar to the XML?
Not supported yet by compose. See this conversation on kotlin-lang: https://kotlinlang.slack.com/archives/CJLTWPH7S/p1616517641495500?thread_ts=1616516302.494300&cid=CJLTWPH7S

In Android, how to achieve this transition effect where incoming material elements expand into view?

As per Google's material design specs, under Animation - meaningful transitions
https://material-design.storage.googleapis.com/publish/material_v_4/material_ext_publish/0Bzhp5Z4wHba3RXRFb0tRZEZDUUU/animation_meaninfultransitions_considerations_do.webm
Sometimes wish they could provide some sample codes right beside the design specs..
I couldn't find anything on google, probably because I am not sure what keywords to use.
Thanks!
The example that you linked appears to be using a reveal transition animation with a shared element between two Activities. For details on how to get your feet wet, take a look at the Android training documentation on Defining Custom Animations.

what is the main difference between android.animation and android.transition package?

We can create animations using both android.animation package and android.transition package but I would like to know what is the main difference between these packages since even custom transitions also use animator's from android animation package.
From the documentation of android.animation:
These classes provide functionality for the property animation system,
which allows you to animate object properties of any type.
From the documentation of android.transition:
The classes in this package enable "scenes & transitions" functionality for view hiearchies.
From there a conclusion could be made that android.animation mostly handles individual View animation (a FAB moving left upon click, etc) while android.transition cares mostly about view hierarchy/layout transition animation (Material Design shared elements, etc).
do read about fundamental difference at http://developer.android.com/about/versions/android-4.4.html in 'Animation & Graphics' section. Basically, you can transition between different states of UI by defining Scene objects.
I don't have any code to support as i haven't used this till now, but above link should get you started.

Categories

Resources