In the past I could do following from a View
based activity:
val options1 = ActivityOptions.makeClipRevealAnimation(
view,
bounds.left,
bounds.top,
bounds.width,
bounds.height
).toBundle()
val options2 = ActivityOptions.makeScaleUpAnimation(
view,
bounds.left,
bounds.top,
bounds.width,
bounds.height
).toBundle()
val intent = Intent(...).apply {
flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
sourceBounds = bounds
}
context.startActivity(intent, options1)
In compose it's not possible to get a view and the above functions do not work without the view (altough from my point of view the bounds would be enough for the functionality).
LocalView
LocalView
is something I can use to get a view inside compose, but in a normal activity this just returns the root view of the activity as everything else is a composable and sub composables don't have their own view - so this is no option here.
Question
Is there any alternative solution to start an activity with scale or reveal animation in a compose based app?
Source: View source