class android.content.res.StringBlock$Height implements android.text.style.LineHeightSpan$WithDensity
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: android.content.res.StringBlock$Height
super_class: java.lang.Object
{
private int mSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static float sProportion;
descriptor: F
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: fconst_0
putstatic android.content.res.StringBlock$Height.sProportion:F
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield android.content.res.StringBlock$Height.mSize:I
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/content/res/StringBlock$Height;
0 3 1 size I
MethodParameters:
Name Flags
size
public void chooseHeight(java.lang.CharSequence, int, int, int, int, android.graphics.Paint$FontMetricsInt);
descriptor: (Ljava/lang/CharSequence;IIIILandroid/graphics/Paint$FontMetricsInt;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
aload 1
iload 2
iload 3
iload 4
iload 5
aload 6
aconst_null
invokevirtual android.content.res.StringBlock$Height.chooseHeight:(Ljava/lang/CharSequence;IIIILandroid/graphics/Paint$FontMetricsInt;Landroid/text/TextPaint;)V
1: 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 2 0 this Landroid/content/res/StringBlock$Height;
0 2 1 text Ljava/lang/CharSequence;
0 2 2 start I
0 2 3 end I
0 2 4 spanstartv I
0 2 5 v I
0 2 6 fm Landroid/graphics/Paint$FontMetricsInt;
MethodParameters:
Name Flags
text
start
end
spanstartv
v
fm
public void chooseHeight(java.lang.CharSequence, int, int, int, int, android.graphics.Paint$FontMetricsInt, android.text.TextPaint);
descriptor: (Ljava/lang/CharSequence;IIIILandroid/graphics/Paint$FontMetricsInt;Landroid/text/TextPaint;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
getfield android.content.res.StringBlock$Height.mSize:I
istore 8
start local 8 1: aload 7
ifnull 3
2: iload 8
i2f
aload 7
getfield android.text.TextPaint.density:F
fmul
f2i
istore 8
3: StackMap locals: int
StackMap stack:
aload 6
getfield android.graphics.Paint$FontMetricsInt.bottom:I
aload 6
getfield android.graphics.Paint$FontMetricsInt.top:I
isub
iload 8
if_icmpge 7
4: aload 6
aload 6
getfield android.graphics.Paint$FontMetricsInt.bottom:I
iload 8
isub
putfield android.graphics.Paint$FontMetricsInt.top:I
5: aload 6
aload 6
getfield android.graphics.Paint$FontMetricsInt.ascent:I
iload 8
isub
putfield android.graphics.Paint$FontMetricsInt.ascent:I
6: goto 24
7: StackMap locals:
StackMap stack:
getstatic android.content.res.StringBlock$Height.sProportion:F
fconst_0
fcmpl
ifne 13
8: new android.graphics.Paint
dup
invokespecial android.graphics.Paint.<init>:()V
astore 9
start local 9 9: aload 9
ldc 100.0
invokevirtual android.graphics.Paint.setTextSize:(F)V
10: new android.graphics.Rect
dup
invokespecial android.graphics.Rect.<init>:()V
astore 10
start local 10 11: aload 9
ldc "ABCDEFG"
iconst_0
bipush 7
aload 10
invokevirtual android.graphics.Paint.getTextBounds:(Ljava/lang/String;IILandroid/graphics/Rect;)V
12: aload 10
getfield android.graphics.Rect.top:I
i2f
aload 9
invokevirtual android.graphics.Paint.ascent:()F
fdiv
putstatic android.content.res.StringBlock$Height.sProportion:F
end local 10 end local 9 13: StackMap locals:
StackMap stack:
aload 6
getfield android.graphics.Paint$FontMetricsInt.top:I
ineg
i2f
getstatic android.content.res.StringBlock$Height.sProportion:F
fmul
f2d
invokestatic java.lang.Math.ceil:(D)D
d2i
istore 9
start local 9 14: iload 8
aload 6
getfield android.graphics.Paint$FontMetricsInt.descent:I
isub
iload 9
if_icmplt 18
15: aload 6
aload 6
getfield android.graphics.Paint$FontMetricsInt.bottom:I
iload 8
isub
putfield android.graphics.Paint$FontMetricsInt.top:I
16: aload 6
aload 6
getfield android.graphics.Paint$FontMetricsInt.descent:I
iload 8
isub
putfield android.graphics.Paint$FontMetricsInt.ascent:I
17: goto 24
StackMap locals: int
StackMap stack:
18: iload 8
iload 9
if_icmplt 22
19: aload 6
aload 6
iload 9
ineg
dup_x1
putfield android.graphics.Paint$FontMetricsInt.ascent:I
putfield android.graphics.Paint$FontMetricsInt.top:I
20: aload 6
aload 6
aload 6
getfield android.graphics.Paint$FontMetricsInt.top:I
iload 8
iadd
dup_x1
putfield android.graphics.Paint$FontMetricsInt.descent:I
putfield android.graphics.Paint$FontMetricsInt.bottom:I
21: goto 24
22: StackMap locals:
StackMap stack:
aload 6
aload 6
iload 8
ineg
dup_x1
putfield android.graphics.Paint$FontMetricsInt.ascent:I
putfield android.graphics.Paint$FontMetricsInt.top:I
23: aload 6
aload 6
iconst_0
dup_x1
putfield android.graphics.Paint$FontMetricsInt.descent:I
putfield android.graphics.Paint$FontMetricsInt.bottom:I
end local 9 24: StackMap locals:
StackMap stack:
return
end local 8 end local 7 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 25 0 this Landroid/content/res/StringBlock$Height;
0 25 1 text Ljava/lang/CharSequence;
0 25 2 start I
0 25 3 end I
0 25 4 spanstartv I
0 25 5 v I
0 25 6 fm Landroid/graphics/Paint$FontMetricsInt;
0 25 7 paint Landroid/text/TextPaint;
1 25 8 size I
9 13 9 p Landroid/graphics/Paint;
11 13 10 r Landroid/graphics/Rect;
14 24 9 need I
MethodParameters:
Name Flags
text
start
end
spanstartv
v
fm
paint
}
SourceFile: "StringBlock.java"
NestHost: android.content.res.StringBlock
InnerClasses:
private Height = android.content.res.StringBlock$Height of android.content.res.StringBlock
public FontMetricsInt = android.graphics.Paint$FontMetricsInt of android.graphics.Paint
public abstract WithDensity = android.text.style.LineHeightSpan$WithDensity of android.text.style.LineHeightSpan