public class android.graphics.drawable.TransitionDrawable extends android.graphics.drawable.LayerDrawable implements android.graphics.drawable.Drawable$Callback
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.graphics.drawable.TransitionDrawable
super_class: android.graphics.drawable.LayerDrawable
{
private static final int TRANSITION_STARTING;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int TRANSITION_RUNNING;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int TRANSITION_NONE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private int mTransitionState;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean mReverse;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private long mStartTimeMillis;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private int mFrom;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mTo;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mDuration;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mOriginalDuration;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mAlpha;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean mCrossFade;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(android.graphics.drawable.Drawable[]);
descriptor: ([Landroid/graphics/drawable/Drawable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
new android.graphics.drawable.TransitionDrawable$TransitionState
dup
aconst_null
aconst_null
aconst_null
invokespecial android.graphics.drawable.TransitionDrawable$TransitionState.<init>:(Landroid/graphics/drawable/TransitionDrawable$TransitionState;Landroid/graphics/drawable/TransitionDrawable;Landroid/content/res/Resources;)V
aload 1
invokespecial android.graphics.drawable.TransitionDrawable.<init>:(Landroid/graphics/drawable/TransitionDrawable$TransitionState;[Landroid/graphics/drawable/Drawable;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/TransitionDrawable;
0 2 1 layers [Landroid/graphics/drawable/Drawable;
MethodParameters:
Name Flags
layers
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=6, locals=1, args_size=1
start local 0 0: aload 0
new android.graphics.drawable.TransitionDrawable$TransitionState
dup
aconst_null
aconst_null
aconst_null
invokespecial android.graphics.drawable.TransitionDrawable$TransitionState.<init>:(Landroid/graphics/drawable/TransitionDrawable$TransitionState;Landroid/graphics/drawable/TransitionDrawable;Landroid/content/res/Resources;)V
aconst_null
invokespecial android.graphics.drawable.TransitionDrawable.<init>:(Landroid/graphics/drawable/TransitionDrawable$TransitionState;Landroid/content/res/Resources;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/TransitionDrawable;
private void <init>(android.graphics.drawable.TransitionDrawable$TransitionState, android.content.res.Resources);
descriptor: (Landroid/graphics/drawable/TransitionDrawable$TransitionState;Landroid/content/res/Resources;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial android.graphics.drawable.LayerDrawable.<init>:(Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)V
1: aload 0
iconst_2
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
2: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/graphics/drawable/TransitionDrawable;
0 4 1 state Landroid/graphics/drawable/TransitionDrawable$TransitionState;
0 4 2 res Landroid/content/res/Resources;
MethodParameters:
Name Flags
state
res
private void <init>(android.graphics.drawable.TransitionDrawable$TransitionState, android.graphics.drawable.Drawable[]);
descriptor: (Landroid/graphics/drawable/TransitionDrawable$TransitionState;[Landroid/graphics/drawable/Drawable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
aload 1
invokespecial android.graphics.drawable.LayerDrawable.<init>:([Landroid/graphics/drawable/Drawable;Landroid/graphics/drawable/LayerDrawable$LayerState;)V
1: aload 0
iconst_2
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
2: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/graphics/drawable/TransitionDrawable;
0 4 1 state Landroid/graphics/drawable/TransitionDrawable$TransitionState;
0 4 2 layers [Landroid/graphics/drawable/Drawable;
MethodParameters:
Name Flags
state
layers
android.graphics.drawable.LayerDrawable$LayerState createConstantState(android.graphics.drawable.LayerDrawable$LayerState, android.content.res.Resources);
descriptor: (Landroid/graphics/drawable/LayerDrawable$LayerState;Landroid/content/res/Resources;)Landroid/graphics/drawable/LayerDrawable$LayerState;
flags: (0x0000)
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new android.graphics.drawable.TransitionDrawable$TransitionState
dup
aload 1
checkcast android.graphics.drawable.TransitionDrawable$TransitionState
aload 0
aload 2
invokespecial android.graphics.drawable.TransitionDrawable$TransitionState.<init>:(Landroid/graphics/drawable/TransitionDrawable$TransitionState;Landroid/graphics/drawable/TransitionDrawable;Landroid/content/res/Resources;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/graphics/drawable/TransitionDrawable;
0 1 1 state Landroid/graphics/drawable/LayerDrawable$LayerState;
0 1 2 res Landroid/content/res/Resources;
MethodParameters:
Name Flags
state
res
public void startTransition(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mFrom:I
1: aload 0
sipush 255
putfield android.graphics.drawable.TransitionDrawable.mTo:I
2: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
3: aload 0
aload 0
iload 1
dup_x1
putfield android.graphics.drawable.TransitionDrawable.mOriginalDuration:I
putfield android.graphics.drawable.TransitionDrawable.mDuration:I
4: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mReverse:Z
5: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
6: aload 0
invokevirtual android.graphics.drawable.TransitionDrawable.invalidateSelf:()V
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/graphics/drawable/TransitionDrawable;
0 8 1 durationMillis I
MethodParameters:
Name Flags
durationMillis
public void showSecondLayer();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
sipush 255
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
1: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mReverse:Z
2: aload 0
iconst_2
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
3: aload 0
invokevirtual android.graphics.drawable.TransitionDrawable.invalidateSelf:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/graphics/drawable/TransitionDrawable;
public void resetTransition();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
1: aload 0
iconst_2
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
2: aload 0
invokevirtual android.graphics.drawable.TransitionDrawable.invalidateSelf:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/graphics/drawable/TransitionDrawable;
public void reverseTransition(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: invokestatic android.os.SystemClock.uptimeMillis:()J
lstore 2
start local 2 1: lload 2
aload 0
getfield android.graphics.drawable.TransitionDrawable.mStartTimeMillis:J
lsub
aload 0
getfield android.graphics.drawable.TransitionDrawable.mDuration:I
i2l
lcmp
ifle 16
2: aload 0
getfield android.graphics.drawable.TransitionDrawable.mTo:I
ifne 8
3: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mFrom:I
4: aload 0
sipush 255
putfield android.graphics.drawable.TransitionDrawable.mTo:I
5: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
6: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mReverse:Z
7: goto 12
8: StackMap locals: long
StackMap stack:
aload 0
sipush 255
putfield android.graphics.drawable.TransitionDrawable.mFrom:I
9: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mTo:I
10: aload 0
sipush 255
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
11: aload 0
iconst_1
putfield android.graphics.drawable.TransitionDrawable.mReverse:Z
12: StackMap locals:
StackMap stack:
aload 0
aload 0
iload 1
dup_x1
putfield android.graphics.drawable.TransitionDrawable.mOriginalDuration:I
putfield android.graphics.drawable.TransitionDrawable.mDuration:I
13: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
14: aload 0
invokevirtual android.graphics.drawable.TransitionDrawable.invalidateSelf:()V
15: return
16: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield android.graphics.drawable.TransitionDrawable.mReverse:Z
ifeq 17
iconst_0
goto 18
StackMap locals:
StackMap stack: android.graphics.drawable.TransitionDrawable
17: iconst_1
StackMap locals: android.graphics.drawable.TransitionDrawable int long
StackMap stack: android.graphics.drawable.TransitionDrawable int
18: putfield android.graphics.drawable.TransitionDrawable.mReverse:Z
19: aload 0
aload 0
getfield android.graphics.drawable.TransitionDrawable.mAlpha:I
putfield android.graphics.drawable.TransitionDrawable.mFrom:I
20: aload 0
aload 0
getfield android.graphics.drawable.TransitionDrawable.mReverse:Z
ifeq 21
iconst_0
goto 22
StackMap locals:
StackMap stack: android.graphics.drawable.TransitionDrawable
21: sipush 255
StackMap locals: android.graphics.drawable.TransitionDrawable int long
StackMap stack: android.graphics.drawable.TransitionDrawable int
22: putfield android.graphics.drawable.TransitionDrawable.mTo:I
23: aload 0
aload 0
getfield android.graphics.drawable.TransitionDrawable.mReverse:Z
ifeq 24
lload 2
aload 0
getfield android.graphics.drawable.TransitionDrawable.mStartTimeMillis:J
lsub
goto 25
24: StackMap locals:
StackMap stack: android.graphics.drawable.TransitionDrawable
aload 0
getfield android.graphics.drawable.TransitionDrawable.mOriginalDuration:I
i2l
lload 2
aload 0
getfield android.graphics.drawable.TransitionDrawable.mStartTimeMillis:J
lsub
lsub
StackMap locals: android.graphics.drawable.TransitionDrawable int long
StackMap stack: android.graphics.drawable.TransitionDrawable long
25: l2i
26: putfield android.graphics.drawable.TransitionDrawable.mDuration:I
27: aload 0
iconst_0
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
28: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Landroid/graphics/drawable/TransitionDrawable;
0 29 1 duration I
1 29 2 time J
MethodParameters:
Name Flags
duration
public void draw(android.graphics.Canvas);
descriptor: (Landroid/graphics/Canvas;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=2
start local 0 start local 1 0: iconst_1
istore 2
start local 2 1: aload 0
getfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
tableswitch { // 0 - 1
0: 2
1: 6
default: 14
}
2: StackMap locals: int
StackMap stack:
aload 0
invokestatic android.os.SystemClock.uptimeMillis:()J
putfield android.graphics.drawable.TransitionDrawable.mStartTimeMillis:J
3: iconst_0
istore 2
4: aload 0
iconst_1
putfield android.graphics.drawable.TransitionDrawable.mTransitionState:I
5: goto 14
6: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.TransitionDrawable.mStartTimeMillis:J
lconst_0
lcmp
iflt 14
7: invokestatic android.os.SystemClock.uptimeMillis:()J
aload 0
getfield android.graphics.drawable.TransitionDrawable.mStartTimeMillis:J
lsub
l2f
aload 0
getfield android.graphics.drawable.TransitionDrawable.mDuration:I
i2f
8: fdiv
fstore 3
start local 3 9: fload 3
fconst_1
fcmpl
iflt 10
iconst_1
goto 11
StackMap locals: float
StackMap stack:
10: iconst_0
StackMap locals:
StackMap stack: int
11: istore 2
12: fload 3
fconst_1
invokestatic java.lang.Math.min:(FF)F
fstore 3
13: aload 0
aload 0
getfield android.graphics.drawable.TransitionDrawable.mFrom:I
i2f
aload 0
getfield android.graphics.drawable.TransitionDrawable.mTo:I
aload 0
getfield android.graphics.drawable.TransitionDrawable.mFrom:I
isub
i2f
fload 3
fmul
fadd
f2i
putfield android.graphics.drawable.TransitionDrawable.mAlpha:I
end local 3 14: StackMap locals:
StackMap stack:
aload 0
getfield android.graphics.drawable.TransitionDrawable.mAlpha:I
istore 3
start local 3 15: aload 0
getfield android.graphics.drawable.TransitionDrawable.mCrossFade:Z
istore 4
start local 4 16: aload 0
getfield android.graphics.drawable.TransitionDrawable.mLayerState:Landroid/graphics/drawable/LayerDrawable$LayerState;
getfield android.graphics.drawable.LayerDrawable$LayerState.mChildren:[Landroid/graphics/drawable/LayerDrawable$ChildDrawable;
astore 5
start local 5 17: iload 2
ifeq 23
18: iload 4
ifeq 19
iload 3
ifne 20
19: StackMap locals: int int android.graphics.drawable.LayerDrawable$ChildDrawable[]
StackMap stack:
aload 5
iconst_0
aaload
getfield android.graphics.drawable.LayerDrawable$ChildDrawable.mDrawable:Landroid/graphics/drawable/Drawable;
aload 1
invokevirtual android.graphics.drawable.Drawable.draw:(Landroid/graphics/Canvas;)V
20: StackMap locals:
StackMap stack:
iload 3
sipush 255
if_icmpne 22
21: aload 5
iconst_1
aaload
getfield android.graphics.drawable.LayerDrawable$ChildDrawable.mDrawable:Landroid/graphics/drawable/Drawable;
aload 1
invokevirtual android.graphics.drawable.Drawable.draw:(Landroid/graphics/Canvas;)V
22: StackMap locals:
StackMap stack:
return
23: StackMap locals:
StackMap stack:
aload 5
iconst_0
aaload
getfield android.graphics.drawable.LayerDrawable$ChildDrawable.mDrawable:Landroid/graphics/drawable/Drawable;
astore 6
start local 6 24: iload 4
ifeq 26
25: aload 6
sipush 255
iload 3
isub
invokevirtual android.graphics.drawable.Drawable.setAlpha:(I)V
26: StackMap locals: android.graphics.drawable.Drawable
StackMap stack:
aload 6
aload 1
invokevirtual android.graphics.drawable.Drawable.draw:(Landroid/graphics/Canvas;)V
27: iload 4
ifeq 29
28: aload 6
sipush 255
invokevirtual android.graphics.drawable.Drawable.setAlpha:(I)V
29: StackMap locals:
StackMap stack:
iload 3
ifle 34
30: aload 5
iconst_1
aaload
getfield android.graphics.drawable.LayerDrawable$ChildDrawable.mDrawable:Landroid/graphics/drawable/Drawable;
astore 6
31: aload 6
iload 3
invokevirtual android.graphics.drawable.Drawable.setAlpha:(I)V
32: aload 6
aload 1
invokevirtual android.graphics.drawable.Drawable.draw:(Landroid/graphics/Canvas;)V
33: aload 6
sipush 255
invokevirtual android.graphics.drawable.Drawable.setAlpha:(I)V
34: StackMap locals:
StackMap stack:
iload 2
ifne 36
35: aload 0
invokevirtual android.graphics.drawable.TransitionDrawable.invalidateSelf:()V
36: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Landroid/graphics/drawable/TransitionDrawable;
0 37 1 canvas Landroid/graphics/Canvas;
1 37 2 done Z
9 14 3 normalized F
15 37 3 alpha I
16 37 4 crossFade Z
17 37 5 array [Landroid/graphics/drawable/LayerDrawable$ChildDrawable;
24 37 6 d Landroid/graphics/drawable/Drawable;
MethodParameters:
Name Flags
canvas
public void setCrossFadeEnabled(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield android.graphics.drawable.TransitionDrawable.mCrossFade:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/graphics/drawable/TransitionDrawable;
0 2 1 enabled Z
MethodParameters:
Name Flags
enabled
public boolean isCrossFadeEnabled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.graphics.drawable.TransitionDrawable.mCrossFade:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/graphics/drawable/TransitionDrawable;
}
SourceFile: "TransitionDrawable.java"
NestMembers:
android.graphics.drawable.TransitionDrawable$TransitionState
InnerClasses:
public abstract Callback = android.graphics.drawable.Drawable$Callback of android.graphics.drawable.Drawable
ChildDrawable = android.graphics.drawable.LayerDrawable$ChildDrawable of android.graphics.drawable.LayerDrawable
LayerState = android.graphics.drawable.LayerDrawable$LayerState of android.graphics.drawable.LayerDrawable
TransitionState = android.graphics.drawable.TransitionDrawable$TransitionState of android.graphics.drawable.TransitionDrawable