MaterialContainerTransformSharedElementCallback

public class MaterialContainerTransformSharedElementCallback
extends SharedElementCallback

java.lang.Object
   ↳ android.app.SharedElementCallback
     ↳ com.google.android.material.transition.platform.MaterialContainerTransformSharedElementCallback


A SharedElementCallback to be used for MaterialContainerTransform transitions.

Summary

Public methods

MaterialContainerTransformSharedElementCallback.ShapeProvider getShapeProvider()

Get the MaterialContainerTransformSharedElementCallback.ShapeProvider for this callback, or null if it is not set.

boolean isSharedElementReenterTransitionEnabled()

Returns whether incoming Activity's sharedElementReenterTransition will be respected.

boolean isTransparentWindowBackgroundEnabled()

Returns whether the incoming window's background should be made transparent during the transition.

Parcelable onCaptureSharedElementSnapshot(View sharedElement, Matrix viewToGlobalMatrix, RectF screenBounds)
View onCreateSnapshotView(Context context, Parcelable snapshot)
void onMapSharedElements(List<String> names, Map<String, View> sharedElements)
void onSharedElementEnd(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots)
void onSharedElementStart(List<String> sharedElementNames, List<View> sharedElements, List<View> sharedElementSnapshots)
void setShapeProvider(MaterialContainerTransformSharedElementCallback.ShapeProvider shapeProvider)

Set the MaterialContainerTransformSharedElementCallback.ShapeProvider for this callback, which allows providing a ShapeAppearanceModel for the shared element view.

void setSharedElementReenterTransitionEnabled(boolean sharedElementReenterTransitionEnabled)

If enabled, the Activity's sharedElementReenterTransition will be respected; otherwise it will be set to null.

void setTransparentWindowBackgroundEnabled(boolean transparentWindowBackgroundEnabled)

If enabled, the incoming window's background will be made transparent during the transition.

Inherited methods

Parcelable onCaptureSharedElementSnapshot(View arg0, Matrix arg1, RectF arg2)
View onCreateSnapshotView(Context arg0, Parcelable arg1)
void onMapSharedElements(List<String> arg0, Map<String, View> arg1)
void onRejectSharedElements(List<View> arg0)
void onSharedElementEnd(List<String> arg0, List<View> arg1, List<View> arg2)
void onSharedElementStart(List<String> arg0, List<View> arg1, List<View> arg2)
void onSharedElementsArrived(List<String> arg0, List<View> arg1, SharedElementCallback.OnSharedElementsReadyListener arg2)
Object clone()
boolean equals(Object arg0)
void finalize()
final Class<?> getClass()
int hashCode()
final void notify()
final void notifyAll()
String toString()
final void wait(long arg0, int arg1)
final void wait(long arg0)
final void wait()

Public constructors

MaterialContainerTransformSharedElementCallback

public MaterialContainerTransformSharedElementCallback ()

Public methods

isSharedElementReenterTransitionEnabled

public boolean isSharedElementReenterTransitionEnabled ()

Returns whether incoming Activity's sharedElementReenterTransition will be respected.

Returns
boolean

isTransparentWindowBackgroundEnabled

public boolean isTransparentWindowBackgroundEnabled ()

Returns whether the incoming window's background should be made transparent during the transition.

Returns
boolean

onCaptureSharedElementSnapshot

public Parcelable onCaptureSharedElementSnapshot (View sharedElement, 
                Matrix viewToGlobalMatrix, 
                RectF screenBounds)

Parameters
sharedElement View

viewToGlobalMatrix Matrix

screenBounds RectF

Returns
Parcelable

onCreateSnapshotView

public View onCreateSnapshotView (Context context, 
                Parcelable snapshot)

Parameters
context Context

snapshot Parcelable

Returns
View

onMapSharedElements

public void onMapSharedElements (List<String> names, 
                Map<String, View> sharedElements)

Parameters
names List

sharedElements Map

onSharedElementEnd

public void onSharedElementEnd (List<String> sharedElementNames, 
                List<View> sharedElements, 
                List<View> sharedElementSnapshots)

Parameters
sharedElementNames List

sharedElements List

sharedElementSnapshots List

onSharedElementStart

public void onSharedElementStart (List<String> sharedElementNames, 
                List<View> sharedElements, 
                List<View> sharedElementSnapshots)

Parameters
sharedElementNames List

sharedElements List

sharedElementSnapshots List

setShapeProvider

public void setShapeProvider (MaterialContainerTransformSharedElementCallback.ShapeProvider shapeProvider)

Set the MaterialContainerTransformSharedElementCallback.ShapeProvider for this callback, which allows providing a ShapeAppearanceModel for the shared element view.

The default is a MaterialContainerTransformSharedElementCallback.ShapeableViewShapeProvider, which will use the view's ShapeAppearanceModel if the view implements the Shapeable interface.

Parameters
shapeProvider MaterialContainerTransformSharedElementCallback.ShapeProvider

setSharedElementReenterTransitionEnabled

public void setSharedElementReenterTransitionEnabled (boolean sharedElementReenterTransitionEnabled)

If enabled, the Activity's sharedElementReenterTransition will be respected; otherwise it will be set to null. Default is false, meaning the sharedElementReenterTransition will be set to null.

Parameters
sharedElementReenterTransitionEnabled boolean

setTransparentWindowBackgroundEnabled

public void setTransparentWindowBackgroundEnabled (boolean transparentWindowBackgroundEnabled)

If enabled, the incoming window's background will be made transparent during the transition. This results in an effect where the outgoing activity's content is visible for the duration of the transition, because the incoming window background will not be faded in on top of it. Default is true.

Note: in order to avoid some visual artifacts, when this setting is enabled the window's transition background fade duration (see Window.setTransitionBackgroundFadeDuration(long)) will be overridden to be greater than the duration of the transform transition.

Parameters
transparentWindowBackgroundEnabled boolean