Package org.robolectric.shadows
Class ShadowChoreographer
- java.lang.Object
-
- org.robolectric.shadows.ShadowChoreographer
-
- Direct Known Subclasses:
ShadowLegacyChoreographer
,ShadowPausedChoreographer
@Implements(value=android.view.Choreographer.class, shadowPicker=Picker.class) public abstract class ShadowChoreographer extends Object
The shadow API forChoreographer
.Different shadow implementations will be used depending on the current
LooperMode
. SeeShadowLegacyChoreographer
andShadowPausedChoreographer
for details.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static interface
ShadowChoreographer.ChoreographerReflector
Accessor interface forChoreographer
's internalsstatic class
ShadowChoreographer.Picker
-
Constructor Summary
Constructors Constructor Description ShadowChoreographer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected void
doFrame(long frameTimeNanos, int frame)
static long
getFrameInterval()
Return the current inter-frame interval.static void
setFrameInterval(long frameInterval)
Set the inter-frame interval used to advance the clock.static void
setPostCallbackDelay(int delayMillis)
Allows application to specify a fixed amount of delay when#postCallback(int, Runnable, Object)
is invoked.static void
setPostFrameCallbackDelay(int delayMillis)
Allows application to specify a fixed amount of delay when#postFrameCallback(FrameCallback)
is invoked.
-
-
-
Method Detail
-
setPostCallbackDelay
public static void setPostCallbackDelay(int delayMillis)
Allows application to specify a fixed amount of delay when#postCallback(int, Runnable, Object)
is invoked. The default delay value is 0. This can be used to avoid infinite animation tasks to be spawned when the RobolectricScheduler
is inScheduler.IdleState.PAUSED
mode.Only supported in
LooperMode.Mode.LEGACY
-
setPostFrameCallbackDelay
public static void setPostFrameCallbackDelay(int delayMillis)
Allows application to specify a fixed amount of delay when#postFrameCallback(FrameCallback)
is invoked. The default delay value is 0. This can be used to avoid infinite animation tasks to be spawned when in LooperMode PAUSED orScheduler.IdleState.PAUSED
and displaying an animation.
-
getFrameInterval
public static long getFrameInterval()
Return the current inter-frame interval.Can only be used in
LooperMode.Mode.LEGACY
- Returns:
- Inter-frame interval.
-
setFrameInterval
public static void setFrameInterval(long frameInterval)
Set the inter-frame interval used to advance the clock. By default, this is set to 1ms.Only supported in
LooperMode.Mode.LEGACY
- Parameters:
frameInterval
- Inter-frame interval.
-
doFrame
@Implementation(maxSdk=30) protected void doFrame(long frameTimeNanos, int frame)
-
-