public class android.widget.GridView extends android.widget.AbsListView
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.widget.GridView
super_class: android.widget.AbsListView
{
public static final int NO_STRETCH;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 0
public static final int STRETCH_SPACING;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 1
public static final int STRETCH_COLUMN_WIDTH;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 2
public static final int STRETCH_SPACING_UNIFORM;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 3
public static final int AUTO_FIT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: -1
private int mNumColumns;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mHorizontalSpacing;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mRequestedHorizontalSpacing;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mVerticalSpacing;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mStretchMode;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mColumnWidth;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mRequestedColumnWidth;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mRequestedNumColumns;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private android.view.View mReferenceView;
descriptor: Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
private android.view.View mReferenceViewInSelectedRow;
descriptor: Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
private int mGravity;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final android.graphics.Rect mTempRect;
descriptor: Landroid/graphics/Rect;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(android.content.Context);
descriptor: (Landroid/content/Context;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // android.content.Context context
0: .line 127
aload 0 /* this */
aload 1 /* context */
aconst_null
invokespecial android.widget.GridView.<init>:(Landroid/content/Context;Landroid/util/AttributeSet;)V
1: .line 128
return
end local 1 // android.content.Context context
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/GridView;
0 2 1 context Landroid/content/Context;
MethodParameters:
Name Flags
context
public void <init>(android.content.Context, android.util.AttributeSet);
descriptor: (Landroid/content/Context;Landroid/util/AttributeSet;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 // android.widget.GridView this
0: .line 45
new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tThe import com.android.internal.R cannot be resolved\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
MethodParameters:
Name Flags
context
attrs
public void <init>(android.content.Context, android.util.AttributeSet, int);
descriptor: (Landroid/content/Context;Landroid/util/AttributeSet;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 // android.widget.GridView this
start local 1 // android.content.Context context
start local 2 // android.util.AttributeSet attrs
start local 3 // int defStyleAttr
0: .line 135
aload 0 /* this */
aload 1 /* context */
aload 2 /* attrs */
iload 3 /* defStyleAttr */
iconst_0
invokespecial android.widget.GridView.<init>:(Landroid/content/Context;Landroid/util/AttributeSet;II)V
1: .line 136
return
end local 3 // int defStyleAttr
end local 2 // android.util.AttributeSet attrs
end local 1 // android.content.Context context
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/GridView;
0 2 1 context Landroid/content/Context;
0 2 2 attrs Landroid/util/AttributeSet;
0 2 3 defStyleAttr I
MethodParameters:
Name Flags
context
attrs
defStyleAttr
public void <init>(android.content.Context, android.util.AttributeSet, int, int);
descriptor: (Landroid/content/Context;Landroid/util/AttributeSet;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=5
start local 0 // android.widget.GridView this
0: .line 45
new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tThe import com.android.internal.R cannot be resolved\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n\tR cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
MethodParameters:
Name Flags
context
attrs
defStyleAttr
defStyleRes
public android.widget.ListAdapter getAdapter();
descriptor: ()Landroid/widget/ListAdapter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 175
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
areturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public void setRemoteViewsAdapter(android.content.Intent);
descriptor: (Landroid/content/Intent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // android.content.Intent intent
0: .line 185
aload 0 /* this */
aload 1 /* intent */
invokespecial android.widget.AbsListView.setRemoteViewsAdapter:(Landroid/content/Intent;)V
1: .line 186
return
end local 1 // android.content.Intent intent
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/GridView;
0 2 1 intent Landroid/content/Intent;
RuntimeVisibleAnnotations:
android.view.RemotableViewMethod(asyncImpl = "setRemoteViewsAdapterAsync")
MethodParameters:
Name Flags
intent
public void setAdapter(android.widget.ListAdapter);
descriptor: (Landroid/widget/ListAdapter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // android.widget.GridView this
start local 1 // android.widget.ListAdapter adapter
0: .line 195
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
ifnull 2
aload 0 /* this */
getfield android.widget.GridView.mDataSetObserver:Landroid/widget/AbsListView$AdapterDataSetObserver;
ifnull 2
1: .line 196
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
aload 0 /* this */
getfield android.widget.GridView.mDataSetObserver:Landroid/widget/AbsListView$AdapterDataSetObserver;
invokeinterface android.widget.ListAdapter.unregisterDataSetObserver:(Landroid/database/DataSetObserver;)V
2: .line 199
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.resetList:()V
3: .line 200
aload 0 /* this */
getfield android.widget.GridView.mRecycler:Landroid/widget/AbsListView$RecycleBin;
invokevirtual android.widget.AbsListView$RecycleBin.clear:()V
4: .line 201
aload 0 /* this */
aload 1 /* adapter */
putfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
5: .line 203
aload 0 /* this */
iconst_m1
putfield android.widget.GridView.mOldSelectedPosition:I
6: .line 204
aload 0 /* this */
ldc -9223372036854775808
putfield android.widget.GridView.mOldSelectedRowId:J
7: .line 207
aload 0 /* this */
aload 1 /* adapter */
invokespecial android.widget.AbsListView.setAdapter:(Landroid/widget/ListAdapter;)V
8: .line 209
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
ifnull 24
9: .line 210
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
putfield android.widget.GridView.mOldItemCount:I
10: .line 211
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
invokeinterface android.widget.ListAdapter.getCount:()I
putfield android.widget.GridView.mItemCount:I
11: .line 212
aload 0 /* this */
iconst_1
putfield android.widget.GridView.mDataChanged:Z
12: .line 213
aload 0 /* this */
invokevirtual android.widget.GridView.checkFocus:()V
13: .line 215
aload 0 /* this */
new android.widget.AbsListView$AdapterDataSetObserver
dup
aload 0 /* this */
invokespecial android.widget.AbsListView$AdapterDataSetObserver.<init>:(Landroid/widget/AbsListView;)V
putfield android.widget.GridView.mDataSetObserver:Landroid/widget/AbsListView$AdapterDataSetObserver;
14: .line 216
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
aload 0 /* this */
getfield android.widget.GridView.mDataSetObserver:Landroid/widget/AbsListView$AdapterDataSetObserver;
invokeinterface android.widget.ListAdapter.registerDataSetObserver:(Landroid/database/DataSetObserver;)V
15: .line 218
aload 0 /* this */
getfield android.widget.GridView.mRecycler:Landroid/widget/AbsListView$RecycleBin;
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
invokeinterface android.widget.ListAdapter.getViewTypeCount:()I
invokevirtual android.widget.AbsListView$RecycleBin.setViewTypeCount:(I)V
16: .line 221
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 19
17: .line 222
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iconst_0
invokevirtual android.widget.GridView.lookForSelectablePosition:(IZ)I
istore 2 /* position */
start local 2 // int position
18: .line 223
goto 20
end local 2 // int position
19: .line 224
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
iconst_1
invokevirtual android.widget.GridView.lookForSelectablePosition:(IZ)I
istore 2 /* position */
start local 2 // int position
20: .line 226
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 2 /* position */
invokevirtual android.widget.GridView.setSelectedPositionInt:(I)V
21: .line 227
aload 0 /* this */
iload 2 /* position */
invokevirtual android.widget.GridView.setNextSelectedPositionInt:(I)V
22: .line 228
aload 0 /* this */
invokevirtual android.widget.GridView.checkSelectionChanged:()V
end local 2 // int position
23: .line 229
goto 26
24: .line 230
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.checkFocus:()V
25: .line 232
aload 0 /* this */
invokevirtual android.widget.GridView.checkSelectionChanged:()V
26: .line 235
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayout:()V
27: .line 236
return
end local 1 // android.widget.ListAdapter adapter
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Landroid/widget/GridView;
0 28 1 adapter Landroid/widget/ListAdapter;
18 19 2 position I
20 23 2 position I
MethodParameters:
Name Flags
adapter
int lookForSelectablePosition(int, boolean);
descriptor: (IZ)I
flags: (0x0000)
Code:
stack=2, locals=4, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int position
start local 2 // boolean lookDown
0: .line 240
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
astore 3 /* adapter */
start local 3 // android.widget.ListAdapter adapter
1: .line 241
aload 3 /* adapter */
ifnull 2
aload 0 /* this */
invokevirtual android.widget.GridView.isInTouchMode:()Z
ifeq 3
2: .line 242
StackMap locals: android.widget.ListAdapter
StackMap stack:
iconst_m1
ireturn
3: .line 245
StackMap locals:
StackMap stack:
iload 1 /* position */
iflt 4
iload 1 /* position */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
if_icmplt 5
4: .line 246
StackMap locals:
StackMap stack:
iconst_m1
ireturn
5: .line 248
StackMap locals:
StackMap stack:
iload 1 /* position */
ireturn
end local 3 // android.widget.ListAdapter adapter
end local 2 // boolean lookDown
end local 1 // int position
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/GridView;
0 6 1 position I
0 6 2 lookDown Z
1 6 3 adapter Landroid/widget/ListAdapter;
MethodParameters:
Name Flags
position
lookDown
void fillGap(boolean);
descriptor: (Z)V
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 // android.widget.GridView this
start local 1 // boolean down
0: .line 256
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 2 /* numColumns */
start local 2 // int numColumns
1: .line 257
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
istore 3 /* verticalSpacing */
start local 3 // int verticalSpacing
2: .line 259
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 4 /* count */
start local 4 // int count
3: .line 261
iload 1 /* down */
ifeq 17
4: .line 262
iconst_0
istore 5 /* paddingTop */
start local 5 // int paddingTop
5: .line 263
aload 0 /* this */
getfield android.widget.GridView.mGroupFlags:I
bipush 34
iand
bipush 34
if_icmpne 7
6: .line 264
aload 0 /* this */
invokevirtual android.widget.GridView.getListPaddingTop:()I
istore 5 /* paddingTop */
7: .line 266
StackMap locals: android.widget.GridView int int int int int
StackMap stack:
iload 4 /* count */
ifle 9
8: .line 267
aload 0 /* this */
iload 4 /* count */
iconst_1
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
invokevirtual android.view.View.getBottom:()I
iload 3 /* verticalSpacing */
iadd
goto 10
StackMap locals:
StackMap stack:
9: iload 5 /* paddingTop */
10: .line 266
StackMap locals:
StackMap stack: int
istore 6 /* startOffset */
start local 6 // int startOffset
11: .line 268
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 4 /* count */
iadd
istore 7 /* position */
start local 7 // int position
12: .line 269
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 14
13: .line 270
iload 7 /* position */
iload 2 /* numColumns */
iconst_1
isub
iadd
istore 7 /* position */
14: .line 272
StackMap locals: int int
StackMap stack:
aload 0 /* this */
iload 7 /* position */
iload 6 /* startOffset */
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
15: .line 273
aload 0 /* this */
iload 2 /* numColumns */
iload 3 /* verticalSpacing */
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
invokevirtual android.widget.GridView.correctTooHigh:(III)V
end local 7 // int position
end local 6 // int startOffset
end local 5 // int paddingTop
16: .line 274
goto 31
17: .line 275
StackMap locals:
StackMap stack:
iconst_0
istore 5 /* paddingBottom */
start local 5 // int paddingBottom
18: .line 276
aload 0 /* this */
getfield android.widget.GridView.mGroupFlags:I
bipush 34
iand
bipush 34
if_icmpne 20
19: .line 277
aload 0 /* this */
invokevirtual android.widget.GridView.getListPaddingBottom:()I
istore 5 /* paddingBottom */
20: .line 279
StackMap locals: int
StackMap stack:
iload 4 /* count */
ifle 22
21: .line 280
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
invokevirtual android.view.View.getTop:()I
iload 3 /* verticalSpacing */
isub
goto 23
StackMap locals:
StackMap stack:
22: aload 0 /* this */
invokevirtual android.widget.GridView.getHeight:()I
iload 5 /* paddingBottom */
isub
23: .line 279
StackMap locals:
StackMap stack: int
istore 6 /* startOffset */
start local 6 // int startOffset
24: .line 281
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
istore 7 /* position */
start local 7 // int position
25: .line 282
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 28
26: .line 283
iload 7 /* position */
iload 2 /* numColumns */
isub
istore 7 /* position */
27: .line 284
goto 29
28: .line 285
StackMap locals: int int
StackMap stack:
iinc 7 /* position */ -1
29: .line 287
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 7 /* position */
iload 6 /* startOffset */
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
30: .line 288
aload 0 /* this */
iload 2 /* numColumns */
iload 3 /* verticalSpacing */
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
invokevirtual android.widget.GridView.correctTooLow:(III)V
end local 7 // int position
end local 6 // int startOffset
end local 5 // int paddingBottom
31: .line 290
StackMap locals:
StackMap stack:
return
end local 4 // int count
end local 3 // int verticalSpacing
end local 2 // int numColumns
end local 1 // boolean down
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Landroid/widget/GridView;
0 32 1 down Z
1 32 2 numColumns I
2 32 3 verticalSpacing I
3 32 4 count I
5 16 5 paddingTop I
11 16 6 startOffset I
12 16 7 position I
18 31 5 paddingBottom I
24 31 6 startOffset I
25 31 7 position I
MethodParameters:
Name Flags
down
private android.view.View fillDown(int, int);
descriptor: (II)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int pos
start local 2 // int nextTop
0: .line 304
aconst_null
astore 3 /* selectedView */
start local 3 // android.view.View selectedView
1: .line 306
aload 0 /* this */
getfield android.widget.GridView.mBottom:I
aload 0 /* this */
getfield android.widget.GridView.mTop:I
isub
istore 4 /* end */
start local 4 // int end
2: .line 307
aload 0 /* this */
getfield android.widget.GridView.mGroupFlags:I
bipush 34
iand
bipush 34
if_icmpne 10
3: .line 308
iload 4 /* end */
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
isub
istore 4 /* end */
4: .line 311
goto 10
5: .line 312
StackMap locals: android.view.View int
StackMap stack:
aload 0 /* this */
iload 1 /* pos */
iload 2 /* nextTop */
iconst_1
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 5 /* temp */
start local 5 // android.view.View temp
6: .line 313
aload 5 /* temp */
ifnull 8
7: .line 314
aload 5 /* temp */
astore 3 /* selectedView */
8: .line 319
StackMap locals: android.view.View
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
invokevirtual android.view.View.getBottom:()I
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
iadd
istore 2 /* nextTop */
9: .line 321
iload 1 /* pos */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iadd
istore 1 /* pos */
end local 5 // android.view.View temp
10: .line 311
StackMap locals:
StackMap stack:
iload 2 /* nextTop */
iload 4 /* end */
if_icmpge 11
iload 1 /* pos */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
if_icmplt 5
11: .line 324
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
iadd
iconst_1
isub
invokevirtual android.widget.GridView.setVisibleRangeHint:(II)V
12: .line 325
aload 3 /* selectedView */
areturn
end local 4 // int end
end local 3 // android.view.View selectedView
end local 2 // int nextTop
end local 1 // int pos
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Landroid/widget/GridView;
0 13 1 pos I
0 13 2 nextTop I
1 13 3 selectedView Landroid/view/View;
2 13 4 end I
6 10 5 temp Landroid/view/View;
MethodParameters:
Name Flags
pos
nextTop
private android.view.View makeRow(int, int, boolean);
descriptor: (IIZ)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=18, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int startPos
start local 2 // int y
start local 3 // boolean flow
0: .line 329
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
istore 4 /* columnWidth */
start local 4 // int columnWidth
1: .line 330
aload 0 /* this */
getfield android.widget.GridView.mHorizontalSpacing:I
istore 5 /* horizontalSpacing */
start local 5 // int horizontalSpacing
2: .line 332
aload 0 /* this */
invokevirtual android.widget.GridView.isLayoutRtl:()Z
istore 6 /* isLayoutRtl */
start local 6 // boolean isLayoutRtl
3: .line 337
iload 6 /* isLayoutRtl */
ifeq 9
4: .line 338
aload 0 /* this */
invokevirtual android.widget.GridView.getWidth:()I
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.right:I
isub
iload 4 /* columnWidth */
isub
5: .line 339
aload 0 /* this */
getfield android.widget.GridView.mStretchMode:I
iconst_3
if_icmpne 6
iload 5 /* horizontalSpacing */
goto 7
StackMap locals: android.widget.GridView int int int int int int
StackMap stack: int
6: iconst_0
7: .line 338
StackMap locals: android.widget.GridView int int int int int int
StackMap stack: int int
isub
istore 8 /* nextLeft */
start local 8 // int nextLeft
8: .line 340
goto 13
end local 8 // int nextLeft
9: .line 341
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.left:I
10: .line 342
aload 0 /* this */
getfield android.widget.GridView.mStretchMode:I
iconst_3
if_icmpne 11
iload 5 /* horizontalSpacing */
goto 12
StackMap locals:
StackMap stack: int
11: iconst_0
12: .line 341
StackMap locals: android.widget.GridView int int int int int int
StackMap stack: int int
iadd
istore 8 /* nextLeft */
start local 8 // int nextLeft
13: .line 345
StackMap locals: android.widget.GridView int int int int int int top int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 16
14: .line 346
iload 1 /* startPos */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iadd
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
invokestatic java.lang.Math.min:(II)I
istore 7 /* last */
start local 7 // int last
15: .line 347
goto 23
end local 7 // int last
16: .line 348
StackMap locals:
StackMap stack:
iload 1 /* startPos */
iconst_1
iadd
istore 7 /* last */
start local 7 // int last
17: .line 349
iconst_0
iload 1 /* startPos */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 1 /* startPos */
18: .line 351
iload 7 /* last */
iload 1 /* startPos */
isub
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
if_icmpge 23
19: .line 352
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iload 7 /* last */
iload 1 /* startPos */
isub
isub
iload 4 /* columnWidth */
iload 5 /* horizontalSpacing */
iadd
imul
istore 9 /* deltaLeft */
start local 9 // int deltaLeft
20: .line 353
iload 8 /* nextLeft */
iload 6 /* isLayoutRtl */
ifeq 21
iconst_m1
goto 22
StackMap locals: android.widget.GridView int int int int int int int int int
StackMap stack: int
21: iconst_1
StackMap locals: android.widget.GridView int int int int int int int int int
StackMap stack: int int
22: iload 9 /* deltaLeft */
imul
iadd
istore 8 /* nextLeft */
end local 9 // int deltaLeft
23: .line 357
StackMap locals:
StackMap stack:
aconst_null
astore 9 /* selectedView */
start local 9 // android.view.View selectedView
24: .line 359
aload 0 /* this */
invokevirtual android.widget.GridView.shouldShowSelector:()Z
istore 10 /* hasFocus */
start local 10 // boolean hasFocus
25: .line 360
aload 0 /* this */
invokevirtual android.widget.GridView.touchModeDrawsInPressedState:()Z
istore 11 /* inClick */
start local 11 // boolean inClick
26: .line 361
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
istore 12 /* selectedPosition */
start local 12 // int selectedPosition
27: .line 363
aconst_null
astore 13 /* child */
start local 13 // android.view.View child
28: .line 364
iload 6 /* isLayoutRtl */
ifeq 29
iconst_m1
goto 30
StackMap locals: android.widget.GridView int int int int int int int int android.view.View int int int android.view.View
StackMap stack:
29: iconst_1
StackMap locals:
StackMap stack: int
30: istore 14 /* nextChildDir */
start local 14 // int nextChildDir
31: .line 365
iload 1 /* startPos */
istore 15 /* pos */
start local 15 // int pos
32: goto 46
33: .line 367
StackMap locals: int int
StackMap stack:
iload 15 /* pos */
iload 12 /* selectedPosition */
if_icmpne 34
iconst_1
goto 35
StackMap locals:
StackMap stack:
34: iconst_0
StackMap locals:
StackMap stack: int
35: istore 16 /* selected */
start local 16 // boolean selected
36: .line 370
iload 3 /* flow */
ifeq 37
iconst_m1
goto 38
StackMap locals: int
StackMap stack:
37: iload 15 /* pos */
iload 1 /* startPos */
isub
StackMap locals:
StackMap stack: int
38: istore 17 /* where */
start local 17 // int where
39: .line 371
aload 0 /* this */
iload 15 /* pos */
iload 2 /* y */
iload 3 /* flow */
iload 8 /* nextLeft */
iload 16 /* selected */
iload 17 /* where */
invokevirtual android.widget.GridView.makeAndAddView:(IIZIZI)Landroid/view/View;
astore 13 /* child */
40: .line 373
iload 8 /* nextLeft */
iload 14 /* nextChildDir */
iload 4 /* columnWidth */
imul
iadd
istore 8 /* nextLeft */
41: .line 374
iload 15 /* pos */
iload 7 /* last */
iconst_1
isub
if_icmpge 43
42: .line 375
iload 8 /* nextLeft */
iload 14 /* nextChildDir */
iload 5 /* horizontalSpacing */
imul
iadd
istore 8 /* nextLeft */
43: .line 378
StackMap locals: int
StackMap stack:
iload 16 /* selected */
ifeq 45
iload 10 /* hasFocus */
ifne 44
iload 11 /* inClick */
ifeq 45
44: .line 379
StackMap locals:
StackMap stack:
aload 13 /* child */
astore 9 /* selectedView */
end local 17 // int where
end local 16 // boolean selected
45: .line 365
StackMap locals:
StackMap stack:
iinc 15 /* pos */ 1
StackMap locals:
StackMap stack:
46: iload 15 /* pos */
iload 7 /* last */
if_icmplt 33
end local 15 // int pos
47: .line 383
aload 0 /* this */
aload 13 /* child */
putfield android.widget.GridView.mReferenceView:Landroid/view/View;
48: .line 385
aload 9 /* selectedView */
ifnull 50
49: .line 386
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
putfield android.widget.GridView.mReferenceViewInSelectedRow:Landroid/view/View;
50: .line 389
StackMap locals:
StackMap stack:
aload 9 /* selectedView */
areturn
end local 14 // int nextChildDir
end local 13 // android.view.View child
end local 12 // int selectedPosition
end local 11 // boolean inClick
end local 10 // boolean hasFocus
end local 9 // android.view.View selectedView
end local 8 // int nextLeft
end local 7 // int last
end local 6 // boolean isLayoutRtl
end local 5 // int horizontalSpacing
end local 4 // int columnWidth
end local 3 // boolean flow
end local 2 // int y
end local 1 // int startPos
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 51 0 this Landroid/widget/GridView;
0 51 1 startPos I
0 51 2 y I
0 51 3 flow Z
1 51 4 columnWidth I
2 51 5 horizontalSpacing I
3 51 6 isLayoutRtl Z
15 16 7 last I
17 51 7 last I
8 9 8 nextLeft I
13 51 8 nextLeft I
20 23 9 deltaLeft I
24 51 9 selectedView Landroid/view/View;
25 51 10 hasFocus Z
26 51 11 inClick Z
27 51 12 selectedPosition I
28 51 13 child Landroid/view/View;
31 51 14 nextChildDir I
32 47 15 pos I
36 45 16 selected Z
39 45 17 where I
MethodParameters:
Name Flags
startPos
y
flow
private android.view.View fillUp(int, int);
descriptor: (II)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int pos
start local 2 // int nextBottom
0: .line 403
aconst_null
astore 3 /* selectedView */
start local 3 // android.view.View selectedView
1: .line 405
iconst_0
istore 4 /* end */
start local 4 // int end
2: .line 406
aload 0 /* this */
getfield android.widget.GridView.mGroupFlags:I
bipush 34
iand
bipush 34
if_icmpne 11
3: .line 407
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
istore 4 /* end */
4: .line 410
goto 11
5: .line 412
StackMap locals: android.view.View int
StackMap stack:
aload 0 /* this */
iload 1 /* pos */
iload 2 /* nextBottom */
iconst_0
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 5 /* temp */
start local 5 // android.view.View temp
6: .line 413
aload 5 /* temp */
ifnull 8
7: .line 414
aload 5 /* temp */
astore 3 /* selectedView */
8: .line 417
StackMap locals: android.view.View
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
invokevirtual android.view.View.getTop:()I
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
isub
istore 2 /* nextBottom */
9: .line 419
aload 0 /* this */
iload 1 /* pos */
putfield android.widget.GridView.mFirstPosition:I
10: .line 421
iload 1 /* pos */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
isub
istore 1 /* pos */
end local 5 // android.view.View temp
11: .line 410
StackMap locals:
StackMap stack:
iload 2 /* nextBottom */
iload 4 /* end */
if_icmple 12
iload 1 /* pos */
ifge 5
12: .line 424
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 14
13: .line 425
aload 0 /* this */
iconst_0
iload 1 /* pos */
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
putfield android.widget.GridView.mFirstPosition:I
14: .line 428
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
iadd
iconst_1
isub
invokevirtual android.widget.GridView.setVisibleRangeHint:(II)V
15: .line 429
aload 3 /* selectedView */
areturn
end local 4 // int end
end local 3 // android.view.View selectedView
end local 2 // int nextBottom
end local 1 // int pos
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Landroid/widget/GridView;
0 16 1 pos I
0 16 2 nextBottom I
1 16 3 selectedView Landroid/view/View;
2 16 4 end I
6 11 5 temp Landroid/view/View;
MethodParameters:
Name Flags
pos
nextBottom
private android.view.View fillFromTop(int);
descriptor: (I)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int nextTop
0: .line 441
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
invokestatic java.lang.Math.min:(II)I
putfield android.widget.GridView.mFirstPosition:I
1: .line 442
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
putfield android.widget.GridView.mFirstPosition:I
2: .line 443
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
ifge 4
3: .line 444
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mFirstPosition:I
4: .line 446
StackMap locals:
StackMap stack:
aload 0 /* this */
dup
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
irem
isub
putfield android.widget.GridView.mFirstPosition:I
5: .line 447
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 1 /* nextTop */
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
areturn
end local 1 // int nextTop
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/GridView;
0 6 1 nextTop I
MethodParameters:
Name Flags
nextTop
private android.view.View fillFromBottom(int, int);
descriptor: (II)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int lastPosition
start local 2 // int nextBottom
0: .line 451
iload 1 /* lastPosition */
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
invokestatic java.lang.Math.max:(II)I
istore 1 /* lastPosition */
1: .line 452
iload 1 /* lastPosition */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 1 /* lastPosition */
2: .line 454
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 1 /* lastPosition */
isub
istore 3 /* invertedPosition */
start local 3 // int invertedPosition
3: .line 455
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 3 /* invertedPosition */
iload 3 /* invertedPosition */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
irem
isub
isub
istore 1 /* lastPosition */
4: .line 457
aload 0 /* this */
iload 1 /* lastPosition */
iload 2 /* nextBottom */
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
areturn
end local 3 // int invertedPosition
end local 2 // int nextBottom
end local 1 // int lastPosition
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/widget/GridView;
0 5 1 lastPosition I
0 5 2 nextBottom I
3 5 3 invertedPosition I
MethodParameters:
Name Flags
lastPosition
nextBottom
private android.view.View fillSelection(int, int);
descriptor: (II)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=14, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int childrenTop
start local 2 // int childrenBottom
0: .line 461
aload 0 /* this */
invokevirtual android.widget.GridView.reconcileSelectedPosition:()I
istore 3 /* selectedPosition */
start local 3 // int selectedPosition
1: .line 462
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 4 /* numColumns */
start local 4 // int numColumns
2: .line 463
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
istore 5 /* verticalSpacing */
start local 5 // int verticalSpacing
3: .line 466
iconst_m1
istore 7 /* rowEnd */
start local 7 // int rowEnd
4: .line 468
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 7
5: .line 469
iload 3 /* selectedPosition */
iload 3 /* selectedPosition */
iload 4 /* numColumns */
irem
isub
istore 6 /* rowStart */
start local 6 // int rowStart
6: .line 470
goto 10
end local 6 // int rowStart
7: .line 471
StackMap locals: android.widget.GridView int int int int int top int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 3 /* selectedPosition */
isub
istore 8 /* invertedSelection */
start local 8 // int invertedSelection
8: .line 473
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 8 /* invertedSelection */
iload 8 /* invertedSelection */
iload 4 /* numColumns */
irem
isub
isub
istore 7 /* rowEnd */
9: .line 474
iconst_0
iload 7 /* rowEnd */
iload 4 /* numColumns */
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 6 /* rowStart */
end local 8 // int invertedSelection
start local 6 // int rowStart
10: .line 477
StackMap locals: android.widget.GridView int int int int int int int
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.getVerticalFadingEdgeLength:()I
istore 8 /* fadingEdgeLength */
start local 8 // int fadingEdgeLength
11: .line 478
aload 0 /* this */
iload 1 /* childrenTop */
iload 8 /* fadingEdgeLength */
iload 6 /* rowStart */
invokevirtual android.widget.GridView.getTopSelectionPixel:(III)I
istore 9 /* topSelectionPixel */
start local 9 // int topSelectionPixel
12: .line 480
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 13
iload 7 /* rowEnd */
goto 14
StackMap locals: android.widget.GridView int int int int int int int int int
StackMap stack: android.widget.GridView
13: iload 6 /* rowStart */
StackMap locals: android.widget.GridView int int int int int int int int int
StackMap stack: android.widget.GridView int
14: iload 9 /* topSelectionPixel */
iconst_1
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 10 /* sel */
start local 10 // android.view.View sel
15: .line 481
aload 0 /* this */
iload 6 /* rowStart */
putfield android.widget.GridView.mFirstPosition:I
16: .line 483
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
astore 11 /* referenceView */
start local 11 // android.view.View referenceView
17: .line 485
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 23
18: .line 486
aload 0 /* this */
iload 6 /* rowStart */
iload 4 /* numColumns */
iadd
aload 11 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 5 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
19: .line 487
aload 0 /* this */
iload 2 /* childrenBottom */
invokevirtual android.widget.GridView.pinToBottom:(I)V
20: .line 488
aload 0 /* this */
iload 6 /* rowStart */
iload 4 /* numColumns */
isub
aload 11 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 5 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
21: .line 489
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
22: .line 490
goto 32
23: .line 491
StackMap locals: android.view.View android.view.View
StackMap stack:
aload 0 /* this */
iload 2 /* childrenBottom */
24: .line 492
iload 8 /* fadingEdgeLength */
iload 4 /* numColumns */
iload 6 /* rowStart */
25: .line 491
invokevirtual android.widget.GridView.getBottomSelectionPixel:(IIII)I
istore 12 /* bottomSelectionPixel */
start local 12 // int bottomSelectionPixel
26: .line 493
iload 12 /* bottomSelectionPixel */
aload 11 /* referenceView */
invokevirtual android.view.View.getBottom:()I
isub
istore 13 /* offset */
start local 13 // int offset
27: .line 494
aload 0 /* this */
iload 13 /* offset */
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
28: .line 495
aload 0 /* this */
iload 6 /* rowStart */
iconst_1
isub
aload 11 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 5 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
29: .line 496
aload 0 /* this */
iload 1 /* childrenTop */
invokevirtual android.widget.GridView.pinToTop:(I)V
30: .line 497
aload 0 /* this */
iload 7 /* rowEnd */
iload 4 /* numColumns */
iadd
aload 11 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 5 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
31: .line 498
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
end local 13 // int offset
end local 12 // int bottomSelectionPixel
32: .line 501
StackMap locals:
StackMap stack:
aload 10 /* sel */
areturn
end local 11 // android.view.View referenceView
end local 10 // android.view.View sel
end local 9 // int topSelectionPixel
end local 8 // int fadingEdgeLength
end local 7 // int rowEnd
end local 6 // int rowStart
end local 5 // int verticalSpacing
end local 4 // int numColumns
end local 3 // int selectedPosition
end local 2 // int childrenBottom
end local 1 // int childrenTop
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Landroid/widget/GridView;
0 33 1 childrenTop I
0 33 2 childrenBottom I
1 33 3 selectedPosition I
2 33 4 numColumns I
3 33 5 verticalSpacing I
6 7 6 rowStart I
10 33 6 rowStart I
4 33 7 rowEnd I
8 10 8 invertedSelection I
11 33 8 fadingEdgeLength I
12 33 9 topSelectionPixel I
15 33 10 sel Landroid/view/View;
17 33 11 referenceView Landroid/view/View;
26 32 12 bottomSelectionPixel I
27 32 13 offset I
MethodParameters:
Name Flags
childrenTop
childrenBottom
private void pinToTop(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int childrenTop
0: .line 505
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
ifne 5
1: .line 506
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
invokevirtual android.view.View.getTop:()I
istore 2 /* top */
start local 2 // int top
2: .line 507
iload 1 /* childrenTop */
iload 2 /* top */
isub
istore 3 /* offset */
start local 3 // int offset
3: .line 508
iload 3 /* offset */
ifge 5
4: .line 509
aload 0 /* this */
iload 3 /* offset */
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
end local 3 // int offset
end local 2 // int top
5: .line 512
StackMap locals:
StackMap stack:
return
end local 1 // int childrenTop
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/GridView;
0 6 1 childrenTop I
2 5 2 top I
3 5 3 offset I
MethodParameters:
Name Flags
childrenTop
private void pinToBottom(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int childrenBottom
0: .line 515
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 2 /* count */
start local 2 // int count
1: .line 516
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 2 /* count */
iadd
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
if_icmpne 6
2: .line 517
aload 0 /* this */
iload 2 /* count */
iconst_1
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
invokevirtual android.view.View.getBottom:()I
istore 3 /* bottom */
start local 3 // int bottom
3: .line 518
iload 1 /* childrenBottom */
iload 3 /* bottom */
isub
istore 4 /* offset */
start local 4 // int offset
4: .line 519
iload 4 /* offset */
ifle 6
5: .line 520
aload 0 /* this */
iload 4 /* offset */
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
end local 4 // int offset
end local 3 // int bottom
6: .line 523
StackMap locals: int
StackMap stack:
return
end local 2 // int count
end local 1 // int childrenBottom
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/widget/GridView;
0 7 1 childrenBottom I
1 7 2 count I
3 6 3 bottom I
4 6 4 offset I
MethodParameters:
Name Flags
childrenBottom
int findMotionRow(int);
descriptor: (I)I
flags: (0x0000)
Code:
stack=3, locals=5, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int y
0: .line 527
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 2 /* childCount */
start local 2 // int childCount
1: .line 528
iload 2 /* childCount */
ifle 17
2: .line 530
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 3 /* numColumns */
start local 3 // int numColumns
3: .line 531
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 11
4: .line 532
iconst_0
istore 4 /* i */
start local 4 // int i
5: goto 9
6: .line 533
StackMap locals: int int int
StackMap stack:
iload 1 /* y */
aload 0 /* this */
iload 4 /* i */
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
invokevirtual android.view.View.getBottom:()I
if_icmpgt 8
7: .line 534
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 4 /* i */
iadd
ireturn
8: .line 532
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* numColumns */
iadd
istore 4 /* i */
StackMap locals:
StackMap stack:
9: iload 4 /* i */
iload 2 /* childCount */
if_icmplt 6
end local 4 // int i
10: .line 537
goto 17
11: .line 538
StackMap locals:
StackMap stack:
iload 2 /* childCount */
iconst_1
isub
istore 4 /* i */
start local 4 // int i
12: goto 16
13: .line 539
StackMap locals: int
StackMap stack:
iload 1 /* y */
aload 0 /* this */
iload 4 /* i */
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
invokevirtual android.view.View.getTop:()I
if_icmplt 15
14: .line 540
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 4 /* i */
iadd
ireturn
15: .line 538
StackMap locals:
StackMap stack:
iload 4 /* i */
iload 3 /* numColumns */
isub
istore 4 /* i */
StackMap locals:
StackMap stack:
16: iload 4 /* i */
ifge 13
end local 4 // int i
end local 3 // int numColumns
17: .line 545
StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 2 // int childCount
end local 1 // int y
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Landroid/widget/GridView;
0 18 1 y I
1 18 2 childCount I
3 17 3 numColumns I
5 10 4 i I
12 17 4 i I
MethodParameters:
Name Flags
y
private android.view.View fillSpecific(int, int);
descriptor: (II)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=12, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int position
start local 2 // int top
0: .line 559
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 3 /* numColumns */
start local 3 // int numColumns
1: .line 562
iconst_m1
istore 5 /* motionRowEnd */
start local 5 // int motionRowEnd
2: .line 564
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 5
3: .line 565
iload 1 /* position */
iload 1 /* position */
iload 3 /* numColumns */
irem
isub
istore 4 /* motionRowStart */
start local 4 // int motionRowStart
4: .line 566
goto 8
end local 4 // int motionRowStart
5: .line 567
StackMap locals: android.widget.GridView int int int top int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 1 /* position */
isub
istore 6 /* invertedSelection */
start local 6 // int invertedSelection
6: .line 569
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 6 /* invertedSelection */
iload 6 /* invertedSelection */
iload 3 /* numColumns */
irem
isub
isub
istore 5 /* motionRowEnd */
7: .line 570
iconst_0
iload 5 /* motionRowEnd */
iload 3 /* numColumns */
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 4 /* motionRowStart */
end local 6 // int invertedSelection
start local 4 // int motionRowStart
8: .line 573
StackMap locals: android.widget.GridView int int int int int
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 9
iload 5 /* motionRowEnd */
goto 10
StackMap locals:
StackMap stack: android.widget.GridView
9: iload 4 /* motionRowStart */
StackMap locals: android.widget.GridView int int int int int
StackMap stack: android.widget.GridView int
10: iload 2 /* top */
iconst_1
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 6 /* temp */
start local 6 // android.view.View temp
11: .line 576
aload 0 /* this */
iload 4 /* motionRowStart */
putfield android.widget.GridView.mFirstPosition:I
12: .line 578
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
astore 7 /* referenceView */
start local 7 // android.view.View referenceView
13: .line 580
aload 7 /* referenceView */
ifnonnull 15
14: .line 581
aconst_null
areturn
15: .line 584
StackMap locals: android.view.View android.view.View
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
istore 8 /* verticalSpacing */
start local 8 // int verticalSpacing
16: .line 589
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 24
17: .line 590
aload 0 /* this */
iload 4 /* motionRowStart */
iload 3 /* numColumns */
isub
aload 7 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 8 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
astore 9 /* above */
start local 9 // android.view.View above
18: .line 591
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
19: .line 592
aload 0 /* this */
iload 4 /* motionRowStart */
iload 3 /* numColumns */
iadd
aload 7 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 8 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
astore 10 /* below */
start local 10 // android.view.View below
20: .line 594
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 11 /* childCount */
start local 11 // int childCount
21: .line 595
iload 11 /* childCount */
ifle 30
22: .line 596
aload 0 /* this */
iload 3 /* numColumns */
iload 8 /* verticalSpacing */
iload 11 /* childCount */
invokevirtual android.widget.GridView.correctTooHigh:(III)V
end local 11 // int childCount
23: .line 598
goto 30
end local 10 // android.view.View below
end local 9 // android.view.View above
24: .line 599
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 5 /* motionRowEnd */
iload 3 /* numColumns */
iadd
aload 7 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 8 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
astore 10 /* below */
start local 10 // android.view.View below
25: .line 600
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
26: .line 601
aload 0 /* this */
iload 4 /* motionRowStart */
iconst_1
isub
aload 7 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 8 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
astore 9 /* above */
start local 9 // android.view.View above
27: .line 603
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 11 /* childCount */
start local 11 // int childCount
28: .line 604
iload 11 /* childCount */
ifle 30
29: .line 605
aload 0 /* this */
iload 3 /* numColumns */
iload 8 /* verticalSpacing */
iload 11 /* childCount */
invokevirtual android.widget.GridView.correctTooLow:(III)V
end local 11 // int childCount
30: .line 609
StackMap locals: android.view.View android.view.View
StackMap stack:
aload 6 /* temp */
ifnull 32
31: .line 610
aload 6 /* temp */
areturn
32: .line 611
StackMap locals:
StackMap stack:
aload 9 /* above */
ifnull 34
33: .line 612
aload 9 /* above */
areturn
34: .line 614
StackMap locals:
StackMap stack:
aload 10 /* below */
areturn
end local 10 // android.view.View below
end local 9 // android.view.View above
end local 8 // int verticalSpacing
end local 7 // android.view.View referenceView
end local 6 // android.view.View temp
end local 5 // int motionRowEnd
end local 4 // int motionRowStart
end local 3 // int numColumns
end local 2 // int top
end local 1 // int position
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 35 0 this Landroid/widget/GridView;
0 35 1 position I
0 35 2 top I
1 35 3 numColumns I
4 5 4 motionRowStart I
8 35 4 motionRowStart I
2 35 5 motionRowEnd I
6 8 6 invertedSelection I
11 35 6 temp Landroid/view/View;
13 35 7 referenceView Landroid/view/View;
16 35 8 verticalSpacing I
18 24 9 above Landroid/view/View;
27 35 9 above Landroid/view/View;
20 24 10 below Landroid/view/View;
25 35 10 below Landroid/view/View;
21 23 11 childCount I
28 30 11 childCount I
MethodParameters:
Name Flags
position
top
private void correctTooHigh(int, int, int);
descriptor: (III)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=11, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int numColumns
start local 2 // int verticalSpacing
start local 3 // int childCount
0: .line 620
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 3 /* childCount */
iadd
iconst_1
isub
istore 4 /* lastPosition */
start local 4 // int lastPosition
1: .line 621
iload 4 /* lastPosition */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
if_icmpne 19
iload 3 /* childCount */
ifle 19
2: .line 623
aload 0 /* this */
iload 3 /* childCount */
iconst_1
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 5 /* lastChild */
start local 5 // android.view.View lastChild
3: .line 626
aload 5 /* lastChild */
invokevirtual android.view.View.getBottom:()I
istore 6 /* lastBottom */
start local 6 // int lastBottom
4: .line 628
aload 0 /* this */
getfield android.widget.GridView.mBottom:I
aload 0 /* this */
getfield android.widget.GridView.mTop:I
isub
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
isub
istore 7 /* end */
start local 7 // int end
5: .line 632
iload 7 /* end */
iload 6 /* lastBottom */
isub
istore 8 /* bottomOffset */
start local 8 // int bottomOffset
6: .line 634
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 9 /* firstChild */
start local 9 // android.view.View firstChild
7: .line 635
aload 9 /* firstChild */
invokevirtual android.view.View.getTop:()I
istore 10 /* firstTop */
start local 10 // int firstTop
8: .line 639
iload 8 /* bottomOffset */
ifle 19
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
ifgt 9
iload 10 /* firstTop */
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
if_icmpge 19
9: .line 640
StackMap locals: android.widget.GridView int int int int android.view.View int int int android.view.View int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
ifne 11
10: .line 642
iload 8 /* bottomOffset */
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
iload 10 /* firstTop */
isub
invokestatic java.lang.Math.min:(II)I
istore 8 /* bottomOffset */
11: .line 646
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 8 /* bottomOffset */
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
12: .line 647
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
ifle 19
13: .line 650
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 14
iconst_1
goto 15
StackMap locals: android.widget.GridView int int int int android.view.View int int int android.view.View int
StackMap stack: android.widget.GridView int
14: iload 1 /* numColumns */
StackMap locals: android.widget.GridView int int int int android.view.View int int int android.view.View int
StackMap stack: android.widget.GridView int int
15: isub
16: .line 651
aload 9 /* firstChild */
invokevirtual android.view.View.getTop:()I
iload 2 /* verticalSpacing */
isub
17: .line 650
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
18: .line 653
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
end local 10 // int firstTop
end local 9 // android.view.View firstChild
end local 8 // int bottomOffset
end local 7 // int end
end local 6 // int lastBottom
end local 5 // android.view.View lastChild
19: .line 657
StackMap locals: android.widget.GridView int int int int
StackMap stack:
return
end local 4 // int lastPosition
end local 3 // int childCount
end local 2 // int verticalSpacing
end local 1 // int numColumns
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Landroid/widget/GridView;
0 20 1 numColumns I
0 20 2 verticalSpacing I
0 20 3 childCount I
1 20 4 lastPosition I
3 19 5 lastChild Landroid/view/View;
4 19 6 lastBottom I
5 19 7 end I
6 19 8 bottomOffset I
7 19 9 firstChild Landroid/view/View;
8 19 10 firstTop I
MethodParameters:
Name Flags
numColumns
verticalSpacing
childCount
private void correctTooLow(int, int, int);
descriptor: (III)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=12, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int numColumns
start local 2 // int verticalSpacing
start local 3 // int childCount
0: .line 660
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
ifne 20
iload 3 /* childCount */
ifle 20
1: .line 662
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 4 /* firstChild */
start local 4 // android.view.View firstChild
2: .line 665
aload 4 /* firstChild */
invokevirtual android.view.View.getTop:()I
istore 5 /* firstTop */
start local 5 // int firstTop
3: .line 668
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
istore 6 /* start */
start local 6 // int start
4: .line 671
aload 0 /* this */
getfield android.widget.GridView.mBottom:I
aload 0 /* this */
getfield android.widget.GridView.mTop:I
isub
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
isub
istore 7 /* end */
start local 7 // int end
5: .line 675
iload 5 /* firstTop */
iload 6 /* start */
isub
istore 8 /* topOffset */
start local 8 // int topOffset
6: .line 676
aload 0 /* this */
iload 3 /* childCount */
iconst_1
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 9 /* lastChild */
start local 9 // android.view.View lastChild
7: .line 677
aload 9 /* lastChild */
invokevirtual android.view.View.getBottom:()I
istore 10 /* lastBottom */
start local 10 // int lastBottom
8: .line 678
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 3 /* childCount */
iadd
iconst_1
isub
istore 11 /* lastPosition */
start local 11 // int lastPosition
9: .line 682
iload 8 /* topOffset */
ifle 20
iload 11 /* lastPosition */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
if_icmplt 10
iload 10 /* lastBottom */
iload 7 /* end */
if_icmple 20
10: .line 683
StackMap locals: android.widget.GridView int int int android.view.View int int int int android.view.View int int
StackMap stack:
iload 11 /* lastPosition */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
if_icmpne 12
11: .line 685
iload 8 /* topOffset */
iload 10 /* lastBottom */
iload 7 /* end */
isub
invokestatic java.lang.Math.min:(II)I
istore 8 /* topOffset */
12: .line 689
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 8 /* topOffset */
ineg
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
13: .line 690
iload 11 /* lastPosition */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
if_icmpge 20
14: .line 693
aload 0 /* this */
iload 11 /* lastPosition */
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 15
iconst_1
goto 16
StackMap locals: android.widget.GridView int int int android.view.View int int int int android.view.View int int
StackMap stack: android.widget.GridView int
15: iload 1 /* numColumns */
StackMap locals: android.widget.GridView int int int android.view.View int int int int android.view.View int int
StackMap stack: android.widget.GridView int int
16: iadd
17: .line 694
aload 9 /* lastChild */
invokevirtual android.view.View.getBottom:()I
iload 2 /* verticalSpacing */
iadd
18: .line 693
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
19: .line 696
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
end local 11 // int lastPosition
end local 10 // int lastBottom
end local 9 // android.view.View lastChild
end local 8 // int topOffset
end local 7 // int end
end local 6 // int start
end local 5 // int firstTop
end local 4 // android.view.View firstChild
20: .line 700
StackMap locals: android.widget.GridView int int int
StackMap stack:
return
end local 3 // int childCount
end local 2 // int verticalSpacing
end local 1 // int numColumns
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Landroid/widget/GridView;
0 21 1 numColumns I
0 21 2 verticalSpacing I
0 21 3 childCount I
2 20 4 firstChild Landroid/view/View;
3 20 5 firstTop I
4 20 6 start I
5 20 7 end I
6 20 8 topOffset I
7 20 9 lastChild Landroid/view/View;
8 20 10 lastBottom I
9 20 11 lastPosition I
MethodParameters:
Name Flags
numColumns
verticalSpacing
childCount
private android.view.View fillFromSelection(int, int, int);
descriptor: (III)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=14, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int selectedTop
start local 2 // int childrenTop
start local 3 // int childrenBottom
0: .line 713
aload 0 /* this */
invokevirtual android.widget.GridView.getVerticalFadingEdgeLength:()I
istore 4 /* fadingEdgeLength */
start local 4 // int fadingEdgeLength
1: .line 714
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
istore 5 /* selectedPosition */
start local 5 // int selectedPosition
2: .line 715
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 6 /* numColumns */
start local 6 // int numColumns
3: .line 716
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
istore 7 /* verticalSpacing */
start local 7 // int verticalSpacing
4: .line 719
iconst_m1
istore 9 /* rowEnd */
start local 9 // int rowEnd
5: .line 721
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 8
6: .line 722
iload 5 /* selectedPosition */
iload 5 /* selectedPosition */
iload 6 /* numColumns */
irem
isub
istore 8 /* rowStart */
start local 8 // int rowStart
7: .line 723
goto 11
end local 8 // int rowStart
8: .line 724
StackMap locals: android.widget.GridView int int int int int int int top int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 5 /* selectedPosition */
isub
istore 10 /* invertedSelection */
start local 10 // int invertedSelection
9: .line 726
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 10 /* invertedSelection */
iload 10 /* invertedSelection */
iload 6 /* numColumns */
irem
isub
isub
istore 9 /* rowEnd */
10: .line 727
iconst_0
iload 9 /* rowEnd */
iload 6 /* numColumns */
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 8 /* rowStart */
end local 10 // int invertedSelection
start local 8 // int rowStart
11: .line 733
StackMap locals: android.widget.GridView int int int int int int int int int
StackMap stack:
aload 0 /* this */
iload 2 /* childrenTop */
iload 4 /* fadingEdgeLength */
iload 8 /* rowStart */
invokevirtual android.widget.GridView.getTopSelectionPixel:(III)I
istore 12 /* topSelectionPixel */
start local 12 // int topSelectionPixel
12: .line 734
aload 0 /* this */
iload 3 /* childrenBottom */
iload 4 /* fadingEdgeLength */
13: .line 735
iload 6 /* numColumns */
iload 8 /* rowStart */
14: .line 734
invokevirtual android.widget.GridView.getBottomSelectionPixel:(IIII)I
istore 13 /* bottomSelectionPixel */
start local 13 // int bottomSelectionPixel
15: .line 737
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 16
iload 9 /* rowEnd */
goto 17
StackMap locals: android.widget.GridView int int int int int int int int int top top int int
StackMap stack: android.widget.GridView
16: iload 8 /* rowStart */
StackMap locals: android.widget.GridView int int int int int int int int int top top int int
StackMap stack: android.widget.GridView int
17: iload 1 /* selectedTop */
iconst_1
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 10 /* sel */
start local 10 // android.view.View sel
18: .line 739
aload 0 /* this */
iload 8 /* rowStart */
putfield android.widget.GridView.mFirstPosition:I
19: .line 741
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
astore 11 /* referenceView */
start local 11 // android.view.View referenceView
20: .line 742
aload 0 /* this */
aload 11 /* referenceView */
iload 12 /* topSelectionPixel */
iload 13 /* bottomSelectionPixel */
invokevirtual android.widget.GridView.adjustForTopFadingEdge:(Landroid/view/View;II)V
21: .line 743
aload 0 /* this */
aload 11 /* referenceView */
iload 12 /* topSelectionPixel */
iload 13 /* bottomSelectionPixel */
invokevirtual android.widget.GridView.adjustForBottomFadingEdge:(Landroid/view/View;II)V
22: .line 745
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 27
23: .line 746
aload 0 /* this */
iload 8 /* rowStart */
iload 6 /* numColumns */
isub
aload 11 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 7 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
24: .line 747
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
25: .line 748
aload 0 /* this */
iload 8 /* rowStart */
iload 6 /* numColumns */
iadd
aload 11 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 7 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
26: .line 749
goto 30
27: .line 750
StackMap locals: android.widget.GridView int int int int int int int int int android.view.View android.view.View int int
StackMap stack:
aload 0 /* this */
iload 9 /* rowEnd */
iload 6 /* numColumns */
iadd
aload 11 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 7 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
28: .line 751
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
29: .line 752
aload 0 /* this */
iload 8 /* rowStart */
iconst_1
isub
aload 11 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 7 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
30: .line 756
StackMap locals:
StackMap stack:
aload 10 /* sel */
areturn
end local 13 // int bottomSelectionPixel
end local 12 // int topSelectionPixel
end local 11 // android.view.View referenceView
end local 10 // android.view.View sel
end local 9 // int rowEnd
end local 8 // int rowStart
end local 7 // int verticalSpacing
end local 6 // int numColumns
end local 5 // int selectedPosition
end local 4 // int fadingEdgeLength
end local 3 // int childrenBottom
end local 2 // int childrenTop
end local 1 // int selectedTop
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Landroid/widget/GridView;
0 31 1 selectedTop I
0 31 2 childrenTop I
0 31 3 childrenBottom I
1 31 4 fadingEdgeLength I
2 31 5 selectedPosition I
3 31 6 numColumns I
4 31 7 verticalSpacing I
7 8 8 rowStart I
11 31 8 rowStart I
5 31 9 rowEnd I
9 11 10 invertedSelection I
18 31 10 sel Landroid/view/View;
20 31 11 referenceView Landroid/view/View;
12 31 12 topSelectionPixel I
15 31 13 bottomSelectionPixel I
MethodParameters:
Name Flags
selectedTop
childrenTop
childrenBottom
private int getBottomSelectionPixel(int, int, int, int);
descriptor: (IIII)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=5
start local 0 // android.widget.GridView this
start local 1 // int childrenBottom
start local 2 // int fadingEdgeLength
start local 3 // int numColumns
start local 4 // int rowStart
0: .line 771
iload 1 /* childrenBottom */
istore 5 /* bottomSelectionPixel */
start local 5 // int bottomSelectionPixel
1: .line 772
iload 4 /* rowStart */
iload 3 /* numColumns */
iadd
iconst_1
isub
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
if_icmpge 3
2: .line 773
iload 5 /* bottomSelectionPixel */
iload 2 /* fadingEdgeLength */
isub
istore 5 /* bottomSelectionPixel */
3: .line 775
StackMap locals: int
StackMap stack:
iload 5 /* bottomSelectionPixel */
ireturn
end local 5 // int bottomSelectionPixel
end local 4 // int rowStart
end local 3 // int numColumns
end local 2 // int fadingEdgeLength
end local 1 // int childrenBottom
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 childrenBottom I
0 4 2 fadingEdgeLength I
0 4 3 numColumns I
0 4 4 rowStart I
1 4 5 bottomSelectionPixel I
MethodParameters:
Name Flags
childrenBottom
fadingEdgeLength
numColumns
rowStart
private int getTopSelectionPixel(int, int, int);
descriptor: (III)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int childrenTop
start local 2 // int fadingEdgeLength
start local 3 // int rowStart
0: .line 788
iload 1 /* childrenTop */
istore 4 /* topSelectionPixel */
start local 4 // int topSelectionPixel
1: .line 789
iload 3 /* rowStart */
ifle 3
2: .line 790
iload 4 /* topSelectionPixel */
iload 2 /* fadingEdgeLength */
iadd
istore 4 /* topSelectionPixel */
3: .line 792
StackMap locals: int
StackMap stack:
iload 4 /* topSelectionPixel */
ireturn
end local 4 // int topSelectionPixel
end local 3 // int rowStart
end local 2 // int fadingEdgeLength
end local 1 // int childrenTop
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 childrenTop I
0 4 2 fadingEdgeLength I
0 4 3 rowStart I
1 4 4 topSelectionPixel I
MethodParameters:
Name Flags
childrenTop
fadingEdgeLength
rowStart
private void adjustForBottomFadingEdge(android.view.View, int, int);
descriptor: (Landroid/view/View;II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=7, args_size=4
start local 0 // android.widget.GridView this
start local 1 // android.view.View childInSelectedRow
start local 2 // int topSelectionPixel
start local 3 // int bottomSelectionPixel
0: .line 808
aload 1 /* childInSelectedRow */
invokevirtual android.view.View.getBottom:()I
iload 3 /* bottomSelectionPixel */
if_icmple 5
1: .line 812
aload 1 /* childInSelectedRow */
invokevirtual android.view.View.getTop:()I
iload 2 /* topSelectionPixel */
isub
istore 4 /* spaceAbove */
start local 4 // int spaceAbove
2: .line 816
aload 1 /* childInSelectedRow */
invokevirtual android.view.View.getBottom:()I
iload 3 /* bottomSelectionPixel */
isub
istore 5 /* spaceBelow */
start local 5 // int spaceBelow
3: .line 817
iload 4 /* spaceAbove */
iload 5 /* spaceBelow */
invokestatic java.lang.Math.min:(II)I
istore 6 /* offset */
start local 6 // int offset
4: .line 820
aload 0 /* this */
iload 6 /* offset */
ineg
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
end local 6 // int offset
end local 5 // int spaceBelow
end local 4 // int spaceAbove
5: .line 822
StackMap locals:
StackMap stack:
return
end local 3 // int bottomSelectionPixel
end local 2 // int topSelectionPixel
end local 1 // android.view.View childInSelectedRow
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/GridView;
0 6 1 childInSelectedRow Landroid/view/View;
0 6 2 topSelectionPixel I
0 6 3 bottomSelectionPixel I
2 5 4 spaceAbove I
3 5 5 spaceBelow I
4 5 6 offset I
MethodParameters:
Name Flags
childInSelectedRow
topSelectionPixel
bottomSelectionPixel
private void adjustForTopFadingEdge(android.view.View, int, int);
descriptor: (Landroid/view/View;II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=7, args_size=4
start local 0 // android.widget.GridView this
start local 1 // android.view.View childInSelectedRow
start local 2 // int topSelectionPixel
start local 3 // int bottomSelectionPixel
0: .line 836
aload 1 /* childInSelectedRow */
invokevirtual android.view.View.getTop:()I
iload 2 /* topSelectionPixel */
if_icmpge 5
1: .line 839
iload 2 /* topSelectionPixel */
aload 1 /* childInSelectedRow */
invokevirtual android.view.View.getTop:()I
isub
istore 4 /* spaceAbove */
start local 4 // int spaceAbove
2: .line 843
iload 3 /* bottomSelectionPixel */
aload 1 /* childInSelectedRow */
invokevirtual android.view.View.getBottom:()I
isub
istore 5 /* spaceBelow */
start local 5 // int spaceBelow
3: .line 844
iload 4 /* spaceAbove */
iload 5 /* spaceBelow */
invokestatic java.lang.Math.min:(II)I
istore 6 /* offset */
start local 6 // int offset
4: .line 847
aload 0 /* this */
iload 6 /* offset */
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
end local 6 // int offset
end local 5 // int spaceBelow
end local 4 // int spaceAbove
5: .line 849
StackMap locals:
StackMap stack:
return
end local 3 // int bottomSelectionPixel
end local 2 // int topSelectionPixel
end local 1 // android.view.View childInSelectedRow
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/GridView;
0 6 1 childInSelectedRow Landroid/view/View;
0 6 2 topSelectionPixel I
0 6 3 bottomSelectionPixel I
2 5 4 spaceAbove I
3 5 5 spaceBelow I
4 5 6 offset I
MethodParameters:
Name Flags
childInSelectedRow
topSelectionPixel
bottomSelectionPixel
public void smoothScrollToPosition(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int position
0: .line 858
aload 0 /* this */
iload 1 /* position */
invokespecial android.widget.AbsListView.smoothScrollToPosition:(I)V
1: .line 859
return
end local 1 // int position
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/GridView;
0 2 1 position I
RuntimeVisibleAnnotations:
android.view.RemotableViewMethod()
MethodParameters:
Name Flags
position
public void smoothScrollByOffset(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int offset
0: .line 868
aload 0 /* this */
iload 1 /* offset */
invokespecial android.widget.AbsListView.smoothScrollByOffset:(I)V
1: .line 869
return
end local 1 // int offset
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/GridView;
0 2 1 offset I
RuntimeVisibleAnnotations:
android.view.RemotableViewMethod()
MethodParameters:
Name Flags
offset
private android.view.View moveSelection(int, int, int);
descriptor: (III)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=17, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int delta
start local 2 // int childrenTop
start local 3 // int childrenBottom
0: .line 885
aload 0 /* this */
invokevirtual android.widget.GridView.getVerticalFadingEdgeLength:()I
istore 4 /* fadingEdgeLength */
start local 4 // int fadingEdgeLength
1: .line 886
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
istore 5 /* selectedPosition */
start local 5 // int selectedPosition
2: .line 887
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 6 /* numColumns */
start local 6 // int numColumns
3: .line 888
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
istore 7 /* verticalSpacing */
start local 7 // int verticalSpacing
4: .line 892
iconst_m1
istore 10 /* rowEnd */
start local 10 // int rowEnd
5: .line 894
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 9
6: .line 895
iload 5 /* selectedPosition */
iload 1 /* delta */
isub
iload 5 /* selectedPosition */
iload 1 /* delta */
isub
iload 6 /* numColumns */
irem
isub
istore 8 /* oldRowStart */
start local 8 // int oldRowStart
7: .line 897
iload 5 /* selectedPosition */
iload 5 /* selectedPosition */
iload 6 /* numColumns */
irem
isub
istore 9 /* rowStart */
start local 9 // int rowStart
8: .line 898
goto 15
end local 9 // int rowStart
end local 8 // int oldRowStart
9: .line 899
StackMap locals: android.widget.GridView int int int int int int int top top int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 5 /* selectedPosition */
isub
istore 11 /* invertedSelection */
start local 11 // int invertedSelection
10: .line 901
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 11 /* invertedSelection */
iload 11 /* invertedSelection */
iload 6 /* numColumns */
irem
isub
isub
istore 10 /* rowEnd */
11: .line 902
iconst_0
iload 10 /* rowEnd */
iload 6 /* numColumns */
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 9 /* rowStart */
start local 9 // int rowStart
12: .line 904
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 5 /* selectedPosition */
iload 1 /* delta */
isub
isub
istore 11 /* invertedSelection */
13: .line 905
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 11 /* invertedSelection */
iload 11 /* invertedSelection */
iload 6 /* numColumns */
irem
isub
isub
istore 8 /* oldRowStart */
start local 8 // int oldRowStart
14: .line 906
iconst_0
iload 8 /* oldRowStart */
iload 6 /* numColumns */
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 8 /* oldRowStart */
end local 11 // int invertedSelection
15: .line 909
StackMap locals: android.widget.GridView int int int int int int int int int int
StackMap stack:
iload 9 /* rowStart */
iload 8 /* oldRowStart */
isub
istore 11 /* rowDelta */
start local 11 // int rowDelta
16: .line 911
aload 0 /* this */
iload 2 /* childrenTop */
iload 4 /* fadingEdgeLength */
iload 9 /* rowStart */
invokevirtual android.widget.GridView.getTopSelectionPixel:(III)I
istore 12 /* topSelectionPixel */
start local 12 // int topSelectionPixel
17: .line 912
aload 0 /* this */
iload 3 /* childrenBottom */
iload 4 /* fadingEdgeLength */
18: .line 913
iload 6 /* numColumns */
iload 9 /* rowStart */
19: .line 912
invokevirtual android.widget.GridView.getBottomSelectionPixel:(IIII)I
istore 13 /* bottomSelectionPixel */
start local 13 // int bottomSelectionPixel
20: .line 916
aload 0 /* this */
iload 9 /* rowStart */
putfield android.widget.GridView.mFirstPosition:I
21: .line 921
iload 11 /* rowDelta */
ifle 31
22: .line 926
aload 0 /* this */
getfield android.widget.GridView.mReferenceViewInSelectedRow:Landroid/view/View;
ifnonnull 23
iconst_0
goto 24
23: .line 927
StackMap locals: int int int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mReferenceViewInSelectedRow:Landroid/view/View;
invokevirtual android.view.View.getBottom:()I
24: .line 926
StackMap locals:
StackMap stack: int
istore 16 /* oldBottom */
start local 16 // int oldBottom
25: .line 929
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 26
iload 10 /* rowEnd */
goto 27
StackMap locals: android.widget.GridView int int int int int int int int int int int int int top top int
StackMap stack: android.widget.GridView
26: iload 9 /* rowStart */
StackMap locals: android.widget.GridView int int int int int int int int int int int int int top top int
StackMap stack: android.widget.GridView int
27: iload 16 /* oldBottom */
iload 7 /* verticalSpacing */
iadd
iconst_1
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 14 /* sel */
start local 14 // android.view.View sel
28: .line 930
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
astore 15 /* referenceView */
start local 15 // android.view.View referenceView
29: .line 932
aload 0 /* this */
aload 15 /* referenceView */
iload 12 /* topSelectionPixel */
iload 13 /* bottomSelectionPixel */
invokevirtual android.widget.GridView.adjustForBottomFadingEdge:(Landroid/view/View;II)V
end local 16 // int oldBottom
30: .line 933
goto 50
end local 15 // android.view.View referenceView
end local 14 // android.view.View sel
StackMap locals: android.widget.GridView int int int int int int int int int int int int int
StackMap stack:
31: iload 11 /* rowDelta */
ifge 42
32: .line 937
aload 0 /* this */
getfield android.widget.GridView.mReferenceViewInSelectedRow:Landroid/view/View;
ifnonnull 34
33: .line 938
iconst_0
goto 35
StackMap locals:
StackMap stack:
34: aload 0 /* this */
getfield android.widget.GridView.mReferenceViewInSelectedRow:Landroid/view/View;
invokevirtual android.view.View.getTop:()I
35: .line 937
StackMap locals:
StackMap stack: int
istore 16 /* oldTop */
start local 16 // int oldTop
36: .line 940
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 37
iload 10 /* rowEnd */
goto 38
StackMap locals: android.widget.GridView int int int int int int int int int int int int int top top int
StackMap stack: android.widget.GridView
37: iload 9 /* rowStart */
StackMap locals: android.widget.GridView int int int int int int int int int int int int int top top int
StackMap stack: android.widget.GridView int
38: iload 16 /* oldTop */
iload 7 /* verticalSpacing */
isub
iconst_0
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 14 /* sel */
start local 14 // android.view.View sel
39: .line 941
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
astore 15 /* referenceView */
start local 15 // android.view.View referenceView
40: .line 943
aload 0 /* this */
aload 15 /* referenceView */
iload 12 /* topSelectionPixel */
iload 13 /* bottomSelectionPixel */
invokevirtual android.widget.GridView.adjustForTopFadingEdge:(Landroid/view/View;II)V
end local 16 // int oldTop
41: .line 944
goto 50
end local 15 // android.view.View referenceView
end local 14 // android.view.View sel
42: .line 948
StackMap locals: android.widget.GridView int int int int int int int int int int int int int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mReferenceViewInSelectedRow:Landroid/view/View;
ifnonnull 44
43: .line 949
iconst_0
goto 45
StackMap locals:
StackMap stack:
44: aload 0 /* this */
getfield android.widget.GridView.mReferenceViewInSelectedRow:Landroid/view/View;
invokevirtual android.view.View.getTop:()I
45: .line 948
StackMap locals:
StackMap stack: int
istore 16 /* oldTop */
start local 16 // int oldTop
46: .line 951
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 47
iload 10 /* rowEnd */
goto 48
StackMap locals: android.widget.GridView int int int int int int int int int int int int int top top int
StackMap stack: android.widget.GridView
47: iload 9 /* rowStart */
StackMap locals: android.widget.GridView int int int int int int int int int int int int int top top int
StackMap stack: android.widget.GridView int
48: iload 16 /* oldTop */
iconst_1
invokevirtual android.widget.GridView.makeRow:(IIZ)Landroid/view/View;
astore 14 /* sel */
start local 14 // android.view.View sel
49: .line 952
aload 0 /* this */
getfield android.widget.GridView.mReferenceView:Landroid/view/View;
astore 15 /* referenceView */
end local 16 // int oldTop
start local 15 // android.view.View referenceView
50: .line 955
StackMap locals: android.widget.GridView int int int int int int int int int int int int int android.view.View android.view.View
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 55
51: .line 956
aload 0 /* this */
iload 9 /* rowStart */
iload 6 /* numColumns */
isub
aload 15 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 7 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
52: .line 957
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
53: .line 958
aload 0 /* this */
iload 9 /* rowStart */
iload 6 /* numColumns */
iadd
aload 15 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 7 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
54: .line 959
goto 58
55: .line 960
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 10 /* rowEnd */
iload 6 /* numColumns */
iadd
aload 15 /* referenceView */
invokevirtual android.view.View.getBottom:()I
iload 7 /* verticalSpacing */
iadd
invokevirtual android.widget.GridView.fillDown:(II)Landroid/view/View;
pop
56: .line 961
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
57: .line 962
aload 0 /* this */
iload 9 /* rowStart */
iconst_1
isub
aload 15 /* referenceView */
invokevirtual android.view.View.getTop:()I
iload 7 /* verticalSpacing */
isub
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
pop
58: .line 965
StackMap locals:
StackMap stack:
aload 14 /* sel */
areturn
end local 15 // android.view.View referenceView
end local 14 // android.view.View sel
end local 13 // int bottomSelectionPixel
end local 12 // int topSelectionPixel
end local 11 // int rowDelta
end local 10 // int rowEnd
end local 9 // int rowStart
end local 8 // int oldRowStart
end local 7 // int verticalSpacing
end local 6 // int numColumns
end local 5 // int selectedPosition
end local 4 // int fadingEdgeLength
end local 3 // int childrenBottom
end local 2 // int childrenTop
end local 1 // int delta
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 59 0 this Landroid/widget/GridView;
0 59 1 delta I
0 59 2 childrenTop I
0 59 3 childrenBottom I
1 59 4 fadingEdgeLength I
2 59 5 selectedPosition I
3 59 6 numColumns I
4 59 7 verticalSpacing I
7 9 8 oldRowStart I
14 59 8 oldRowStart I
8 9 9 rowStart I
12 59 9 rowStart I
5 59 10 rowEnd I
10 15 11 invertedSelection I
16 59 11 rowDelta I
17 59 12 topSelectionPixel I
20 59 13 bottomSelectionPixel I
28 31 14 sel Landroid/view/View;
39 42 14 sel Landroid/view/View;
49 59 14 sel Landroid/view/View;
29 31 15 referenceView Landroid/view/View;
40 42 15 referenceView Landroid/view/View;
50 59 15 referenceView Landroid/view/View;
25 30 16 oldBottom I
36 41 16 oldTop I
46 50 16 oldTop I
MethodParameters:
Name Flags
delta
childrenTop
childrenBottom
private boolean determineColumns(int);
descriptor: (I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int availableSpace
0: .line 969
aload 0 /* this */
getfield android.widget.GridView.mRequestedHorizontalSpacing:I
istore 2 /* requestedHorizontalSpacing */
start local 2 // int requestedHorizontalSpacing
1: .line 970
aload 0 /* this */
getfield android.widget.GridView.mStretchMode:I
istore 3 /* stretchMode */
start local 3 // int stretchMode
2: .line 971
aload 0 /* this */
getfield android.widget.GridView.mRequestedColumnWidth:I
istore 4 /* requestedColumnWidth */
start local 4 // int requestedColumnWidth
3: .line 972
iconst_0
istore 5 /* didNotInitiallyFit */
start local 5 // boolean didNotInitiallyFit
4: .line 974
aload 0 /* this */
getfield android.widget.GridView.mRequestedNumColumns:I
iconst_m1
if_icmpne 12
5: .line 975
iload 4 /* requestedColumnWidth */
ifle 10
6: .line 977
aload 0 /* this */
iload 1 /* availableSpace */
iload 2 /* requestedHorizontalSpacing */
iadd
7: .line 978
iload 4 /* requestedColumnWidth */
iload 2 /* requestedHorizontalSpacing */
iadd
idiv
8: .line 977
putfield android.widget.GridView.mNumColumns:I
9: .line 979
goto 13
10: .line 981
StackMap locals: android.widget.GridView int int int int int
StackMap stack:
aload 0 /* this */
iconst_2
putfield android.widget.GridView.mNumColumns:I
11: .line 983
goto 13
12: .line 985
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mRequestedNumColumns:I
putfield android.widget.GridView.mNumColumns:I
13: .line 988
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
ifgt 15
14: .line 989
aload 0 /* this */
iconst_1
putfield android.widget.GridView.mNumColumns:I
15: .line 992
StackMap locals:
StackMap stack:
iload 3 /* stretchMode */
tableswitch { // 0 - 0
0: 16
default: 19
}
16: .line 995
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 4 /* requestedColumnWidth */
putfield android.widget.GridView.mColumnWidth:I
17: .line 996
aload 0 /* this */
iload 2 /* requestedHorizontalSpacing */
putfield android.widget.GridView.mHorizontalSpacing:I
18: .line 997
goto 43
19: .line 1000
StackMap locals:
StackMap stack:
iload 1 /* availableSpace */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iload 4 /* requestedColumnWidth */
imul
isub
20: .line 1001
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iconst_1
isub
iload 2 /* requestedHorizontalSpacing */
imul
21: .line 1000
isub
istore 6 /* spaceLeftOver */
start local 6 // int spaceLeftOver
22: .line 1003
iload 6 /* spaceLeftOver */
ifge 24
23: .line 1004
iconst_1
istore 5 /* didNotInitiallyFit */
24: .line 1007
StackMap locals: int
StackMap stack:
iload 3 /* stretchMode */
tableswitch { // 1 - 3
1: 28
2: 25
3: 36
default: 43
}
25: .line 1010
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 4 /* requestedColumnWidth */
iload 6 /* spaceLeftOver */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
idiv
iadd
putfield android.widget.GridView.mColumnWidth:I
26: .line 1011
aload 0 /* this */
iload 2 /* requestedHorizontalSpacing */
putfield android.widget.GridView.mHorizontalSpacing:I
27: .line 1012
goto 43
28: .line 1016
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 4 /* requestedColumnWidth */
putfield android.widget.GridView.mColumnWidth:I
29: .line 1017
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iconst_1
if_icmple 34
30: .line 1018
aload 0 /* this */
iload 2 /* requestedHorizontalSpacing */
31: .line 1019
iload 6 /* spaceLeftOver */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iconst_1
isub
idiv
iadd
32: .line 1018
putfield android.widget.GridView.mHorizontalSpacing:I
33: .line 1020
goto 43
34: .line 1021
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 2 /* requestedHorizontalSpacing */
iload 6 /* spaceLeftOver */
iadd
putfield android.widget.GridView.mHorizontalSpacing:I
35: .line 1023
goto 43
36: .line 1027
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 4 /* requestedColumnWidth */
putfield android.widget.GridView.mColumnWidth:I
37: .line 1028
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iconst_1
if_icmple 42
38: .line 1029
aload 0 /* this */
iload 2 /* requestedHorizontalSpacing */
39: .line 1030
iload 6 /* spaceLeftOver */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iconst_1
iadd
idiv
iadd
40: .line 1029
putfield android.widget.GridView.mHorizontalSpacing:I
41: .line 1031
goto 43
42: .line 1032
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 2 /* requestedHorizontalSpacing */
iload 6 /* spaceLeftOver */
iadd
putfield android.widget.GridView.mHorizontalSpacing:I
end local 6 // int spaceLeftOver
43: .line 1039
StackMap locals:
StackMap stack:
iload 5 /* didNotInitiallyFit */
ireturn
end local 5 // boolean didNotInitiallyFit
end local 4 // int requestedColumnWidth
end local 3 // int stretchMode
end local 2 // int requestedHorizontalSpacing
end local 1 // int availableSpace
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Landroid/widget/GridView;
0 44 1 availableSpace I
1 44 2 requestedHorizontalSpacing I
2 44 3 stretchMode I
3 44 4 requestedColumnWidth I
4 44 5 didNotInitiallyFit Z
22 43 6 spaceLeftOver I
MethodParameters:
Name Flags
availableSpace
protected void onMeasure(int, int);
descriptor: (II)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=16, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int widthMeasureSpec
start local 2 // int heightMeasureSpec
0: .line 1045
aload 0 /* this */
iload 1 /* widthMeasureSpec */
iload 2 /* heightMeasureSpec */
invokespecial android.widget.AbsListView.onMeasure:(II)V
1: .line 1047
iload 1 /* widthMeasureSpec */
invokestatic android.view.View$MeasureSpec.getMode:(I)I
istore 3 /* widthMode */
start local 3 // int widthMode
2: .line 1048
iload 2 /* heightMeasureSpec */
invokestatic android.view.View$MeasureSpec.getMode:(I)I
istore 4 /* heightMode */
start local 4 // int heightMode
3: .line 1049
iload 1 /* widthMeasureSpec */
invokestatic android.view.View$MeasureSpec.getSize:(I)I
istore 5 /* widthSize */
start local 5 // int widthSize
4: .line 1050
iload 2 /* heightMeasureSpec */
invokestatic android.view.View$MeasureSpec.getSize:(I)I
istore 6 /* heightSize */
start local 6 // int heightSize
5: .line 1052
iload 3 /* widthMode */
ifne 11
6: .line 1053
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
ifle 9
7: .line 1054
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.left:I
iadd
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.right:I
iadd
istore 5 /* widthSize */
8: .line 1055
goto 10
9: .line 1056
StackMap locals: android.widget.GridView int int int int int int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.left:I
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.right:I
iadd
istore 5 /* widthSize */
10: .line 1058
StackMap locals:
StackMap stack:
iload 5 /* widthSize */
aload 0 /* this */
invokevirtual android.widget.GridView.getVerticalScrollbarWidth:()I
iadd
istore 5 /* widthSize */
11: .line 1061
StackMap locals:
StackMap stack:
iload 5 /* widthSize */
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.left:I
isub
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.right:I
isub
istore 7 /* childWidth */
start local 7 // int childWidth
12: .line 1062
aload 0 /* this */
iload 7 /* childWidth */
invokevirtual android.widget.GridView.determineColumns:(I)Z
istore 8 /* didNotInitiallyFit */
start local 8 // boolean didNotInitiallyFit
13: .line 1064
iconst_0
istore 9 /* childHeight */
start local 9 // int childHeight
14: .line 1065
iconst_0
istore 10 /* childState */
start local 10 // int childState
15: .line 1067
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
ifnonnull 16
iconst_0
goto 17
StackMap locals: android.widget.GridView int int int int int int int int int int
StackMap stack: android.widget.GridView
16: aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
invokeinterface android.widget.ListAdapter.getCount:()I
StackMap locals: android.widget.GridView int int int int int int int int int int
StackMap stack: android.widget.GridView int
17: putfield android.widget.GridView.mItemCount:I
18: .line 1068
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
istore 11 /* count */
start local 11 // int count
19: .line 1069
iload 11 /* count */
ifle 40
20: .line 1070
aload 0 /* this */
iconst_0
aload 0 /* this */
getfield android.widget.GridView.mIsScrap:[Z
invokevirtual android.widget.GridView.obtainView:(I[Z)Landroid/view/View;
astore 12 /* child */
start local 12 // android.view.View child
21: .line 1072
aload 12 /* child */
invokevirtual android.view.View.getLayoutParams:()Landroid/view/ViewGroup$LayoutParams;
checkcast android.widget.AbsListView$LayoutParams
astore 13 /* p */
start local 13 // android.widget.AbsListView$LayoutParams p
22: .line 1073
aload 13 /* p */
ifnonnull 25
23: .line 1074
aload 0 /* this */
invokevirtual android.widget.GridView.generateDefaultLayoutParams:()Landroid/view/ViewGroup$LayoutParams;
checkcast android.widget.AbsListView$LayoutParams
astore 13 /* p */
24: .line 1075
aload 12 /* child */
aload 13 /* p */
invokevirtual android.view.View.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V
25: .line 1077
StackMap locals: int android.view.View android.widget.AbsListView$LayoutParams
StackMap stack:
aload 13 /* p */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
iconst_0
invokeinterface android.widget.ListAdapter.getItemViewType:(I)I
putfield android.widget.AbsListView$LayoutParams.viewType:I
26: .line 1078
aload 13 /* p */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
iconst_0
invokeinterface android.widget.ListAdapter.isEnabled:(I)Z
putfield android.widget.AbsListView$LayoutParams.isEnabled:Z
27: .line 1079
aload 13 /* p */
iconst_1
putfield android.widget.AbsListView$LayoutParams.forceAdd:Z
28: .line 1082
iload 2 /* heightMeasureSpec */
invokestatic android.view.View$MeasureSpec.getSize:(I)I
29: .line 1083
iconst_0
30: .line 1082
invokestatic android.view.View$MeasureSpec.makeSafeMeasureSpec:(II)I
31: .line 1083
iconst_0
aload 13 /* p */
getfield android.widget.AbsListView$LayoutParams.height:I
32: .line 1081
invokestatic android.widget.GridView.getChildMeasureSpec:(III)I
istore 14 /* childHeightSpec */
start local 14 // int childHeightSpec
33: .line 1085
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
ldc 1073741824
invokestatic android.view.View$MeasureSpec.makeMeasureSpec:(II)I
iconst_0
aload 13 /* p */
getfield android.widget.AbsListView$LayoutParams.width:I
34: .line 1084
invokestatic android.widget.GridView.getChildMeasureSpec:(III)I
istore 15 /* childWidthSpec */
start local 15 // int childWidthSpec
35: .line 1086
aload 12 /* child */
iload 15 /* childWidthSpec */
iload 14 /* childHeightSpec */
invokevirtual android.view.View.measure:(II)V
36: .line 1088
aload 12 /* child */
invokevirtual android.view.View.getMeasuredHeight:()I
istore 9 /* childHeight */
37: .line 1089
iload 10 /* childState */
aload 12 /* child */
invokevirtual android.view.View.getMeasuredState:()I
invokestatic android.widget.GridView.combineMeasuredStates:(II)I
istore 10 /* childState */
38: .line 1091
aload 0 /* this */
getfield android.widget.GridView.mRecycler:Landroid/widget/AbsListView$RecycleBin;
aload 13 /* p */
getfield android.widget.AbsListView$LayoutParams.viewType:I
invokevirtual android.widget.AbsListView$RecycleBin.shouldRecycleViewType:(I)Z
ifeq 40
39: .line 1092
aload 0 /* this */
getfield android.widget.GridView.mRecycler:Landroid/widget/AbsListView$RecycleBin;
aload 12 /* child */
iconst_m1
invokevirtual android.widget.AbsListView$RecycleBin.addScrapView:(Landroid/view/View;I)V
end local 15 // int childWidthSpec
end local 14 // int childHeightSpec
end local 13 // android.widget.AbsListView$LayoutParams p
end local 12 // android.view.View child
40: .line 1096
StackMap locals:
StackMap stack:
iload 4 /* heightMode */
ifne 44
41: .line 1097
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
iadd
iload 9 /* childHeight */
iadd
42: .line 1098
aload 0 /* this */
invokevirtual android.widget.GridView.getVerticalFadingEdgeLength:()I
iconst_2
imul
43: .line 1097
iadd
istore 6 /* heightSize */
44: .line 1101
StackMap locals:
StackMap stack:
iload 4 /* heightMode */
ldc -2147483648
if_icmpne 58
45: .line 1102
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
iadd
istore 12 /* ourSize */
start local 12 // int ourSize
46: .line 1104
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 13 /* numColumns */
start local 13 // int numColumns
47: .line 1105
iconst_0
istore 14 /* i */
start local 14 // int i
48: goto 56
49: .line 1106
StackMap locals: int int int
StackMap stack:
iload 12 /* ourSize */
iload 9 /* childHeight */
iadd
istore 12 /* ourSize */
50: .line 1107
iload 14 /* i */
iload 13 /* numColumns */
iadd
iload 11 /* count */
if_icmpge 52
51: .line 1108
iload 12 /* ourSize */
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
iadd
istore 12 /* ourSize */
52: .line 1110
StackMap locals:
StackMap stack:
iload 12 /* ourSize */
iload 6 /* heightSize */
if_icmplt 55
53: .line 1111
iload 6 /* heightSize */
istore 12 /* ourSize */
54: .line 1112
goto 57
55: .line 1105
StackMap locals:
StackMap stack:
iload 14 /* i */
iload 13 /* numColumns */
iadd
istore 14 /* i */
StackMap locals:
StackMap stack:
56: iload 14 /* i */
iload 11 /* count */
if_icmplt 49
end local 14 // int i
57: .line 1115
StackMap locals:
StackMap stack:
iload 12 /* ourSize */
istore 6 /* heightSize */
end local 13 // int numColumns
end local 12 // int ourSize
58: .line 1118
StackMap locals:
StackMap stack:
iload 3 /* widthMode */
ldc -2147483648
if_icmpne 68
aload 0 /* this */
getfield android.widget.GridView.mRequestedNumColumns:I
iconst_m1
if_icmpeq 68
59: .line 1119
aload 0 /* this */
getfield android.widget.GridView.mRequestedNumColumns:I
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
imul
60: .line 1120
aload 0 /* this */
getfield android.widget.GridView.mRequestedNumColumns:I
iconst_1
isub
aload 0 /* this */
getfield android.widget.GridView.mHorizontalSpacing:I
imul
61: .line 1119
iadd
62: .line 1121
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.left:I
63: .line 1119
iadd
64: .line 1121
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.right:I
65: .line 1119
iadd
istore 12 /* ourSize */
start local 12 // int ourSize
66: .line 1122
iload 12 /* ourSize */
iload 5 /* widthSize */
if_icmpgt 67
iload 8 /* didNotInitiallyFit */
ifeq 68
67: .line 1123
StackMap locals: int
StackMap stack:
iload 5 /* widthSize */
ldc 16777216
ior
istore 5 /* widthSize */
end local 12 // int ourSize
68: .line 1127
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 5 /* widthSize */
iload 6 /* heightSize */
invokevirtual android.widget.GridView.setMeasuredDimension:(II)V
69: .line 1128
aload 0 /* this */
iload 1 /* widthMeasureSpec */
putfield android.widget.GridView.mWidthMeasureSpec:I
70: .line 1129
return
end local 11 // int count
end local 10 // int childState
end local 9 // int childHeight
end local 8 // boolean didNotInitiallyFit
end local 7 // int childWidth
end local 6 // int heightSize
end local 5 // int widthSize
end local 4 // int heightMode
end local 3 // int widthMode
end local 2 // int heightMeasureSpec
end local 1 // int widthMeasureSpec
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 71 0 this Landroid/widget/GridView;
0 71 1 widthMeasureSpec I
0 71 2 heightMeasureSpec I
2 71 3 widthMode I
3 71 4 heightMode I
4 71 5 widthSize I
5 71 6 heightSize I
12 71 7 childWidth I
13 71 8 didNotInitiallyFit Z
14 71 9 childHeight I
15 71 10 childState I
19 71 11 count I
21 40 12 child Landroid/view/View;
22 40 13 p Landroid/widget/AbsListView$LayoutParams;
33 40 14 childHeightSpec I
35 40 15 childWidthSpec I
46 58 12 ourSize I
47 58 13 numColumns I
48 57 14 i I
66 68 12 ourSize I
MethodParameters:
Name Flags
widthMeasureSpec
heightMeasureSpec
protected void attachLayoutAnimationParameters(android.view.View, android.view.ViewGroup$LayoutParams, int, int);
descriptor: (Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;II)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=5
start local 0 // android.widget.GridView this
start local 1 // android.view.View child
start local 2 // android.view.ViewGroup$LayoutParams params
start local 3 // int index
start local 4 // int count
0: .line 1136
aload 2 /* params */
getfield android.view.ViewGroup$LayoutParams.layoutAnimationParameters:Landroid/view/animation/LayoutAnimationController$AnimationParameters;
checkcast android.view.animation.GridLayoutAnimationController$AnimationParameters
1: .line 1135
astore 5 /* animationParams */
start local 5 // android.view.animation.GridLayoutAnimationController$AnimationParameters animationParams
2: .line 1138
aload 5 /* animationParams */
ifnonnull 5
3: .line 1139
new android.view.animation.GridLayoutAnimationController$AnimationParameters
dup
invokespecial android.view.animation.GridLayoutAnimationController$AnimationParameters.<init>:()V
astore 5 /* animationParams */
4: .line 1140
aload 2 /* params */
aload 5 /* animationParams */
putfield android.view.ViewGroup$LayoutParams.layoutAnimationParameters:Landroid/view/animation/LayoutAnimationController$AnimationParameters;
5: .line 1143
StackMap locals: android.view.animation.GridLayoutAnimationController$AnimationParameters
StackMap stack:
aload 5 /* animationParams */
iload 4 /* count */
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.count:I
6: .line 1144
aload 5 /* animationParams */
iload 3 /* index */
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.index:I
7: .line 1145
aload 5 /* animationParams */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.columnsCount:I
8: .line 1146
aload 5 /* animationParams */
iload 4 /* count */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
idiv
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.rowsCount:I
9: .line 1148
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 13
10: .line 1149
aload 5 /* animationParams */
iload 3 /* index */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
irem
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.column:I
11: .line 1150
aload 5 /* animationParams */
iload 3 /* index */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
idiv
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.row:I
12: .line 1151
goto 16
13: .line 1152
StackMap locals:
StackMap stack:
iload 4 /* count */
iconst_1
isub
iload 3 /* index */
isub
istore 6 /* invertedIndex */
start local 6 // int invertedIndex
14: .line 1154
aload 5 /* animationParams */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iconst_1
isub
iload 6 /* invertedIndex */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
irem
isub
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.column:I
15: .line 1155
aload 5 /* animationParams */
aload 5 /* animationParams */
getfield android.view.animation.GridLayoutAnimationController$AnimationParameters.rowsCount:I
iconst_1
isub
iload 6 /* invertedIndex */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
idiv
isub
putfield android.view.animation.GridLayoutAnimationController$AnimationParameters.row:I
end local 6 // int invertedIndex
16: .line 1157
StackMap locals:
StackMap stack:
return
end local 5 // android.view.animation.GridLayoutAnimationController$AnimationParameters animationParams
end local 4 // int count
end local 3 // int index
end local 2 // android.view.ViewGroup$LayoutParams params
end local 1 // android.view.View child
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/widget/GridView;
0 17 1 child Landroid/view/View;
0 17 2 params Landroid/view/ViewGroup$LayoutParams;
0 17 3 index I
0 17 4 count I
2 17 5 animationParams Landroid/view/animation/GridLayoutAnimationController$AnimationParameters;
14 16 6 invertedIndex I
MethodParameters:
Name Flags
child
params
index
count
protected void layoutChildren();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=22, args_size=1
start local 0 // android.widget.GridView this
0: .line 1161
aload 0 /* this */
getfield android.widget.GridView.mBlockLayoutRequests:Z
istore 1 /* blockLayoutRequests */
start local 1 // boolean blockLayoutRequests
1: .line 1162
iload 1 /* blockLayoutRequests */
ifne 3
2: .line 1163
aload 0 /* this */
iconst_1
putfield android.widget.GridView.mBlockLayoutRequests:Z
3: .line 1167
StackMap locals: int
StackMap stack:
aload 0 /* this */
invokespecial android.widget.AbsListView.layoutChildren:()V
4: .line 1169
aload 0 /* this */
invokevirtual android.widget.GridView.invalidate:()V
5: .line 1171
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
ifnonnull 11
6: .line 1172
aload 0 /* this */
invokevirtual android.widget.GridView.resetList:()V
7: .line 1173
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
8: .line 1407
iload 1 /* blockLayoutRequests */
ifne 10
9: .line 1408
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mBlockLayoutRequests:Z
10: .line 1174
StackMap locals:
StackMap stack:
return
11: .line 1177
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
istore 2 /* childrenTop */
start local 2 // int childrenTop
12: .line 1178
aload 0 /* this */
getfield android.widget.GridView.mBottom:I
aload 0 /* this */
getfield android.widget.GridView.mTop:I
isub
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
isub
istore 3 /* childrenBottom */
start local 3 // int childrenBottom
13: .line 1180
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 4 /* childCount */
start local 4 // int childCount
14: .line 1182
iconst_0
istore 6 /* delta */
start local 6 // int delta
15: .line 1185
aconst_null
astore 8 /* oldSel */
start local 8 // android.view.View oldSel
16: .line 1186
aconst_null
astore 9 /* oldFirst */
start local 9 // android.view.View oldFirst
17: .line 1187
aconst_null
astore 10 /* newSel */
start local 10 // android.view.View newSel
18: .line 1190
aload 0 /* this */
getfield android.widget.GridView.mLayoutMode:I
tableswitch { // 1 - 6
1: 23
2: 19
3: 23
4: 23
5: 23
6: 24
default: 27
}
19: .line 1192
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mNextSelectedPosition:I
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
isub
istore 5 /* index */
start local 5 // int index
20: .line 1193
iload 5 /* index */
iflt 31
iload 5 /* index */
iload 4 /* childCount */
if_icmpge 31
21: .line 1194
aload 0 /* this */
iload 5 /* index */
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 10 /* newSel */
22: .line 1196
goto 31
end local 5 // int index
23: .line 1201
StackMap locals:
StackMap stack:
goto 31
24: .line 1203
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mNextSelectedPosition:I
iflt 31
25: .line 1204
aload 0 /* this */
getfield android.widget.GridView.mNextSelectedPosition:I
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
isub
istore 6 /* delta */
26: .line 1206
goto 31
27: .line 1209
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
isub
istore 5 /* index */
start local 5 // int index
28: .line 1210
iload 5 /* index */
iflt 30
iload 5 /* index */
iload 4 /* childCount */
if_icmpge 30
29: .line 1211
aload 0 /* this */
iload 5 /* index */
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 8 /* oldSel */
30: .line 1215
StackMap locals: android.widget.GridView int int int int int int top android.view.View android.view.View android.view.View
StackMap stack:
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 9 /* oldFirst */
end local 5 // int index
31: .line 1218
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mDataChanged:Z
istore 11 /* dataChanged */
start local 11 // boolean dataChanged
32: .line 1219
iload 11 /* dataChanged */
ifeq 34
33: .line 1220
aload 0 /* this */
invokevirtual android.widget.GridView.handleDataChanged:()V
34: .line 1225
StackMap locals: int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
ifne 40
35: .line 1226
aload 0 /* this */
invokevirtual android.widget.GridView.resetList:()V
36: .line 1227
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
37: .line 1407
iload 1 /* blockLayoutRequests */
ifne 39
38: .line 1408
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mBlockLayoutRequests:Z
39: .line 1228
StackMap locals:
StackMap stack:
return
40: .line 1231
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mNextSelectedPosition:I
invokevirtual android.widget.GridView.setSelectedPositionInt:(I)V
41: .line 1233
aconst_null
astore 12 /* accessibilityFocusLayoutRestoreNode */
start local 12 // android.view.accessibility.AccessibilityNodeInfo accessibilityFocusLayoutRestoreNode
42: .line 1234
aconst_null
astore 13 /* accessibilityFocusLayoutRestoreView */
start local 13 // android.view.View accessibilityFocusLayoutRestoreView
43: .line 1235
iconst_m1
istore 14 /* accessibilityFocusPosition */
start local 14 // int accessibilityFocusPosition
44: .line 1240
aload 0 /* this */
invokevirtual android.widget.GridView.getViewRootImpl:()Landroid/view/ViewRootImpl;
astore 15 /* viewRootImpl */
start local 15 // android.view.ViewRootImpl viewRootImpl
45: .line 1241
aload 15 /* viewRootImpl */
ifnull 57
46: .line 1242
aload 15 /* viewRootImpl */
invokevirtual android.view.ViewRootImpl.getAccessibilityFocusedHost:()Landroid/view/View;
astore 16 /* focusHost */
start local 16 // android.view.View focusHost
47: .line 1243
aload 16 /* focusHost */
ifnull 57
48: .line 1244
aload 0 /* this */
aload 16 /* focusHost */
invokevirtual android.widget.GridView.getAccessibilityFocusedChild:(Landroid/view/View;)Landroid/view/View;
astore 17 /* focusChild */
start local 17 // android.view.View focusChild
49: .line 1245
aload 17 /* focusChild */
ifnull 57
50: .line 1246
iload 11 /* dataChanged */
ifeq 52
aload 17 /* focusChild */
invokevirtual android.view.View.hasTransientState:()Z
ifne 52
51: .line 1247
aload 0 /* this */
getfield android.widget.GridView.mAdapterHasStableIds:Z
ifeq 56
52: .line 1250
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl android.view.View android.view.View
StackMap stack:
aload 16 /* focusHost */
astore 13 /* accessibilityFocusLayoutRestoreView */
53: .line 1251
aload 15 /* viewRootImpl */
54: .line 1252
invokevirtual android.view.ViewRootImpl.getAccessibilityFocusedVirtualView:()Landroid/view/accessibility/AccessibilityNodeInfo;
55: .line 1251
astore 12 /* accessibilityFocusLayoutRestoreNode */
56: .line 1256
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 17 /* focusChild */
invokevirtual android.widget.GridView.getPositionForView:(Landroid/view/View;)I
istore 14 /* accessibilityFocusPosition */
end local 17 // android.view.View focusChild
end local 16 // android.view.View focusHost
57: .line 1263
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
istore 16 /* firstPosition */
start local 16 // int firstPosition
58: .line 1264
aload 0 /* this */
getfield android.widget.GridView.mRecycler:Landroid/widget/AbsListView$RecycleBin;
astore 17 /* recycleBin */
start local 17 // android.widget.AbsListView$RecycleBin recycleBin
59: .line 1266
iload 11 /* dataChanged */
ifeq 66
60: .line 1267
iconst_0
istore 18 /* i */
start local 18 // int i
61: goto 64
62: .line 1268
StackMap locals: int android.widget.AbsListView$RecycleBin int
StackMap stack:
aload 17 /* recycleBin */
aload 0 /* this */
iload 18 /* i */
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
iload 16 /* firstPosition */
iload 18 /* i */
iadd
invokevirtual android.widget.AbsListView$RecycleBin.addScrapView:(Landroid/view/View;I)V
63: .line 1267
iinc 18 /* i */ 1
StackMap locals:
StackMap stack:
64: iload 18 /* i */
iload 4 /* childCount */
if_icmplt 62
end local 18 // int i
65: .line 1270
goto 67
66: .line 1271
StackMap locals:
StackMap stack:
aload 17 /* recycleBin */
iload 4 /* childCount */
iload 16 /* firstPosition */
invokevirtual android.widget.AbsListView$RecycleBin.fillActiveViews:(II)V
67: .line 1275
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.detachAllViewsFromParent:()V
68: .line 1276
aload 17 /* recycleBin */
invokevirtual android.widget.AbsListView$RecycleBin.removeSkippedScrap:()V
69: .line 1278
aload 0 /* this */
getfield android.widget.GridView.mLayoutMode:I
tableswitch { // 1 - 6
1: 75
2: 70
3: 79
4: 82
5: 84
6: 86
default: 88
}
70: .line 1280
StackMap locals:
StackMap stack:
aload 10 /* newSel */
ifnull 73
71: .line 1281
aload 0 /* this */
aload 10 /* newSel */
invokevirtual android.view.View.getTop:()I
iload 2 /* childrenTop */
iload 3 /* childrenBottom */
invokevirtual android.widget.GridView.fillFromSelection:(III)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
72: .line 1282
goto 116
end local 7 // android.view.View sel
73: .line 1283
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 2 /* childrenTop */
iload 3 /* childrenBottom */
invokevirtual android.widget.GridView.fillSelection:(II)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
74: .line 1285
goto 116
end local 7 // android.view.View sel
75: .line 1287
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mFirstPosition:I
76: .line 1288
aload 0 /* this */
iload 2 /* childrenTop */
invokevirtual android.widget.GridView.fillFromTop:(I)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
77: .line 1289
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
78: .line 1290
goto 116
end local 7 // android.view.View sel
79: .line 1292
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 3 /* childrenBottom */
invokevirtual android.widget.GridView.fillUp:(II)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
80: .line 1293
aload 0 /* this */
invokevirtual android.widget.GridView.adjustViewsUpOrDown:()V
81: .line 1294
goto 116
end local 7 // android.view.View sel
82: .line 1296
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
aload 0 /* this */
getfield android.widget.GridView.mSpecificTop:I
invokevirtual android.widget.GridView.fillSpecific:(II)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
83: .line 1297
goto 116
end local 7 // android.view.View sel
84: .line 1299
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mSyncPosition:I
aload 0 /* this */
getfield android.widget.GridView.mSpecificTop:I
invokevirtual android.widget.GridView.fillSpecific:(II)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
85: .line 1300
goto 116
end local 7 // android.view.View sel
86: .line 1303
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 6 /* delta */
iload 2 /* childrenTop */
iload 3 /* childrenBottom */
invokevirtual android.widget.GridView.moveSelection:(III)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
87: .line 1304
goto 116
end local 7 // android.view.View sel
88: .line 1306
StackMap locals:
StackMap stack:
iload 4 /* childCount */
ifne 103
89: .line 1307
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 96
90: .line 1308
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
ifnull 91
aload 0 /* this */
invokevirtual android.widget.GridView.isInTouchMode:()Z
ifeq 92
91: .line 1309
StackMap locals:
StackMap stack: android.widget.GridView
iconst_m1
goto 93
StackMap locals:
StackMap stack: android.widget.GridView
92: iconst_0
93: .line 1308
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin
StackMap stack: android.widget.GridView int
invokevirtual android.widget.GridView.setSelectedPositionInt:(I)V
94: .line 1310
aload 0 /* this */
iload 2 /* childrenTop */
invokevirtual android.widget.GridView.fillFromTop:(I)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
95: .line 1311
goto 116
end local 7 // android.view.View sel
96: .line 1312
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
istore 18 /* last */
start local 18 // int last
97: .line 1313
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
ifnull 98
aload 0 /* this */
invokevirtual android.widget.GridView.isInTouchMode:()Z
ifeq 99
98: .line 1314
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin int
StackMap stack: android.widget.GridView
iconst_m1
goto 100
StackMap locals:
StackMap stack: android.widget.GridView
99: iload 18 /* last */
100: .line 1313
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin int
StackMap stack: android.widget.GridView int
invokevirtual android.widget.GridView.setSelectedPositionInt:(I)V
101: .line 1315
aload 0 /* this */
iload 18 /* last */
iload 3 /* childrenBottom */
invokevirtual android.widget.GridView.fillFromBottom:(II)Landroid/view/View;
astore 7 /* sel */
end local 18 // int last
start local 7 // android.view.View sel
102: .line 1317
goto 116
end local 7 // android.view.View sel
103: .line 1318
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
iflt 109
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
if_icmpge 109
104: .line 1319
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
aload 8 /* oldSel */
ifnonnull 106
105: .line 1320
iload 2 /* childrenTop */
goto 107
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin
StackMap stack: android.widget.GridView int
106: aload 8 /* oldSel */
invokevirtual android.view.View.getTop:()I
107: .line 1319
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin
StackMap stack: android.widget.GridView int int
invokevirtual android.widget.GridView.fillSpecific:(II)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
108: .line 1321
goto 116
end local 7 // android.view.View sel
StackMap locals:
StackMap stack:
109: aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
if_icmpge 115
110: .line 1322
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
aload 9 /* oldFirst */
ifnonnull 112
111: .line 1323
iload 2 /* childrenTop */
goto 113
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin
StackMap stack: android.widget.GridView int
112: aload 9 /* oldFirst */
invokevirtual android.view.View.getTop:()I
113: .line 1322
StackMap locals: android.widget.GridView int int int int top int top android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin
StackMap stack: android.widget.GridView int int
invokevirtual android.widget.GridView.fillSpecific:(II)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
114: .line 1324
goto 116
end local 7 // android.view.View sel
115: .line 1325
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
iload 2 /* childrenTop */
invokevirtual android.widget.GridView.fillSpecific:(II)Landroid/view/View;
astore 7 /* sel */
start local 7 // android.view.View sel
116: .line 1332
StackMap locals: android.widget.GridView int int int int top int android.view.View android.view.View android.view.View android.view.View int android.view.accessibility.AccessibilityNodeInfo android.view.View int android.view.ViewRootImpl int android.widget.AbsListView$RecycleBin
StackMap stack:
aload 17 /* recycleBin */
invokevirtual android.widget.AbsListView$RecycleBin.scrapActiveViews:()V
117: .line 1334
aload 7 /* sel */
ifnull 121
118: .line 1335
aload 0 /* this */
iconst_m1
aload 7 /* sel */
invokevirtual android.widget.GridView.positionSelector:(ILandroid/view/View;)V
119: .line 1336
aload 0 /* this */
aload 7 /* sel */
invokevirtual android.view.View.getTop:()I
putfield android.widget.GridView.mSelectedTop:I
120: .line 1337
goto 138
121: .line 1338
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mTouchMode:I
ifle 124
122: .line 1339
aload 0 /* this */
getfield android.widget.GridView.mTouchMode:I
iconst_3
123: .line 1338
if_icmpge 124
iconst_1
goto 125
StackMap locals:
StackMap stack:
124: iconst_0
StackMap locals:
StackMap stack: int
125: istore 18 /* inTouchMode */
start local 18 // boolean inTouchMode
126: .line 1340
iload 18 /* inTouchMode */
ifeq 131
127: .line 1342
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mMotionPosition:I
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 19 /* child */
start local 19 // android.view.View child
128: .line 1343
aload 19 /* child */
ifnull 138
129: .line 1344
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mMotionPosition:I
aload 19 /* child */
invokevirtual android.widget.GridView.positionSelector:(ILandroid/view/View;)V
end local 19 // android.view.View child
130: .line 1346
goto 138
StackMap locals: int
StackMap stack:
131: aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
iconst_m1
if_icmpeq 136
132: .line 1350
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mSelectorPosition:I
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 19 /* child */
start local 19 // android.view.View child
133: .line 1351
aload 19 /* child */
ifnull 138
134: .line 1352
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mSelectorPosition:I
aload 19 /* child */
invokevirtual android.widget.GridView.positionSelector:(ILandroid/view/View;)V
end local 19 // android.view.View child
135: .line 1354
goto 138
136: .line 1356
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mSelectedTop:I
137: .line 1357
aload 0 /* this */
getfield android.widget.GridView.mSelectorRect:Landroid/graphics/Rect;
invokevirtual android.graphics.Rect.setEmpty:()V
end local 18 // boolean inTouchMode
138: .line 1362
StackMap locals:
StackMap stack:
aload 15 /* viewRootImpl */
ifnull 161
139: .line 1363
aload 15 /* viewRootImpl */
invokevirtual android.view.ViewRootImpl.getAccessibilityFocusedHost:()Landroid/view/View;
astore 18 /* newAccessibilityFocusedView */
start local 18 // android.view.View newAccessibilityFocusedView
140: .line 1364
aload 18 /* newAccessibilityFocusedView */
ifnonnull 161
141: .line 1365
aload 13 /* accessibilityFocusLayoutRestoreView */
ifnull 154
142: .line 1366
aload 13 /* accessibilityFocusLayoutRestoreView */
invokevirtual android.view.View.isAttachedToWindow:()Z
ifeq 154
143: .line 1368
aload 13 /* accessibilityFocusLayoutRestoreView */
invokevirtual android.view.View.getAccessibilityNodeProvider:()Landroid/view/accessibility/AccessibilityNodeProvider;
144: .line 1367
astore 19 /* provider */
start local 19 // android.view.accessibility.AccessibilityNodeProvider provider
145: .line 1369
aload 12 /* accessibilityFocusLayoutRestoreNode */
ifnull 152
aload 19 /* provider */
ifnull 152
146: .line 1371
aload 12 /* accessibilityFocusLayoutRestoreNode */
invokevirtual android.view.accessibility.AccessibilityNodeInfo.getSourceNodeId:()J
147: .line 1370
invokestatic android.view.accessibility.AccessibilityNodeInfo.getVirtualDescendantId:(J)I
istore 20 /* virtualViewId */
start local 20 // int virtualViewId
148: .line 1372
aload 19 /* provider */
iload 20 /* virtualViewId */
149: .line 1373
bipush 64
aconst_null
150: .line 1372
invokevirtual android.view.accessibility.AccessibilityNodeProvider.performAction:(IILandroid/os/Bundle;)Z
pop
end local 20 // int virtualViewId
151: .line 1374
goto 161
152: .line 1375
StackMap locals: android.view.View android.view.accessibility.AccessibilityNodeProvider
StackMap stack:
aload 13 /* accessibilityFocusLayoutRestoreView */
invokevirtual android.view.View.requestAccessibilityFocus:()Z
pop
end local 19 // android.view.accessibility.AccessibilityNodeProvider provider
153: .line 1377
goto 161
StackMap locals:
StackMap stack:
154: iload 14 /* accessibilityFocusPosition */
iconst_m1
if_icmpeq 161
155: .line 1380
iload 14 /* accessibilityFocusPosition */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
isub
iconst_0
156: .line 1381
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
iconst_1
isub
157: .line 1379
invokestatic android.util.MathUtils.constrain:(III)I
istore 19 /* position */
start local 19 // int position
158: .line 1382
aload 0 /* this */
iload 19 /* position */
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 20 /* restoreView */
start local 20 // android.view.View restoreView
159: .line 1383
aload 20 /* restoreView */
ifnull 161
160: .line 1384
aload 20 /* restoreView */
invokevirtual android.view.View.requestAccessibilityFocus:()Z
pop
end local 20 // android.view.View restoreView
end local 19 // int position
end local 18 // android.view.View newAccessibilityFocusedView
161: .line 1390
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mLayoutMode:I
162: .line 1391
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mDataChanged:Z
163: .line 1392
aload 0 /* this */
getfield android.widget.GridView.mPositionScrollAfterLayout:Ljava/lang/Runnable;
ifnull 166
164: .line 1393
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mPositionScrollAfterLayout:Ljava/lang/Runnable;
invokevirtual android.widget.GridView.post:(Ljava/lang/Runnable;)Z
pop
165: .line 1394
aload 0 /* this */
aconst_null
putfield android.widget.GridView.mPositionScrollAfterLayout:Ljava/lang/Runnable;
166: .line 1396
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mNeedSync:Z
167: .line 1397
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
invokevirtual android.widget.GridView.setNextSelectedPositionInt:(I)V
168: .line 1399
aload 0 /* this */
invokevirtual android.widget.GridView.updateScrollIndicators:()V
169: .line 1401
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
ifle 171
170: .line 1402
aload 0 /* this */
invokevirtual android.widget.GridView.checkSelectionChanged:()V
171: .line 1405
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
end local 17 // android.widget.AbsListView$RecycleBin recycleBin
end local 16 // int firstPosition
end local 15 // android.view.ViewRootImpl viewRootImpl
end local 14 // int accessibilityFocusPosition
end local 13 // android.view.View accessibilityFocusLayoutRestoreView
end local 12 // android.view.accessibility.AccessibilityNodeInfo accessibilityFocusLayoutRestoreNode
end local 11 // boolean dataChanged
end local 10 // android.view.View newSel
end local 9 // android.view.View oldFirst
end local 8 // android.view.View oldSel
end local 7 // android.view.View sel
end local 6 // int delta
end local 4 // int childCount
end local 3 // int childrenBottom
end local 2 // int childrenTop
172: .line 1406
goto 177
StackMap locals: android.widget.GridView int
StackMap stack: java.lang.Throwable
173: astore 21
174: .line 1407
iload 1 /* blockLayoutRequests */
ifne 176
175: .line 1408
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mBlockLayoutRequests:Z
176: .line 1410
StackMap locals: android.widget.GridView int top top top top top top top top top top top top top top top top top top top java.lang.Throwable
StackMap stack:
aload 21
athrow
177: .line 1407
StackMap locals: android.widget.GridView int
StackMap stack:
iload 1 /* blockLayoutRequests */
ifne 179
178: .line 1408
aload 0 /* this */
iconst_0
putfield android.widget.GridView.mBlockLayoutRequests:Z
179: .line 1411
StackMap locals:
StackMap stack:
return
end local 1 // boolean blockLayoutRequests
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 180 0 this Landroid/widget/GridView;
1 180 1 blockLayoutRequests Z
12 172 2 childrenTop I
13 172 3 childrenBottom I
14 172 4 childCount I
20 23 5 index I
28 31 5 index I
15 172 6 delta I
72 73 7 sel Landroid/view/View;
74 75 7 sel Landroid/view/View;
77 79 7 sel Landroid/view/View;
80 82 7 sel Landroid/view/View;
83 84 7 sel Landroid/view/View;
85 86 7 sel Landroid/view/View;
87 88 7 sel Landroid/view/View;
95 96 7 sel Landroid/view/View;
102 103 7 sel Landroid/view/View;
108 109 7 sel Landroid/view/View;
114 115 7 sel Landroid/view/View;
116 172 7 sel Landroid/view/View;
16 172 8 oldSel Landroid/view/View;
17 172 9 oldFirst Landroid/view/View;
18 172 10 newSel Landroid/view/View;
32 172 11 dataChanged Z
42 172 12 accessibilityFocusLayoutRestoreNode Landroid/view/accessibility/AccessibilityNodeInfo;
43 172 13 accessibilityFocusLayoutRestoreView Landroid/view/View;
44 172 14 accessibilityFocusPosition I
45 172 15 viewRootImpl Landroid/view/ViewRootImpl;
47 57 16 focusHost Landroid/view/View;
49 57 17 focusChild Landroid/view/View;
58 172 16 firstPosition I
59 172 17 recycleBin Landroid/widget/AbsListView$RecycleBin;
61 65 18 i I
97 102 18 last I
126 138 18 inTouchMode Z
128 130 19 child Landroid/view/View;
133 135 19 child Landroid/view/View;
140 161 18 newAccessibilityFocusedView Landroid/view/View;
145 153 19 provider Landroid/view/accessibility/AccessibilityNodeProvider;
148 151 20 virtualViewId I
158 161 19 position I
159 161 20 restoreView Landroid/view/View;
Exception table:
from to target type
3 8 173 any
11 37 173 any
40 173 173 any
private android.view.View makeAndAddView(int, int, boolean, int, boolean, int);
descriptor: (IIZIZI)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=8, args_size=7
start local 0 // android.widget.GridView this
start local 1 // int position
start local 2 // int y
start local 3 // boolean flow
start local 4 // int childrenLeft
start local 5 // boolean selected
start local 6 // int where
0: .line 1431
aload 0 /* this */
getfield android.widget.GridView.mDataChanged:Z
ifne 5
1: .line 1433
aload 0 /* this */
getfield android.widget.GridView.mRecycler:Landroid/widget/AbsListView$RecycleBin;
iload 1 /* position */
invokevirtual android.widget.AbsListView$RecycleBin.getActiveView:(I)Landroid/view/View;
astore 7 /* activeView */
start local 7 // android.view.View activeView
2: .line 1434
aload 7 /* activeView */
ifnull 5
3: .line 1437
aload 0 /* this */
aload 7 /* activeView */
iload 1 /* position */
iload 2 /* y */
iload 3 /* flow */
iload 4 /* childrenLeft */
iload 5 /* selected */
iconst_1
iload 6 /* where */
invokevirtual android.widget.GridView.setupChild:(Landroid/view/View;IIZIZZI)V
4: .line 1438
aload 7 /* activeView */
areturn
end local 7 // android.view.View activeView
5: .line 1444
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* position */
aload 0 /* this */
getfield android.widget.GridView.mIsScrap:[Z
invokevirtual android.widget.GridView.obtainView:(I[Z)Landroid/view/View;
astore 7 /* child */
start local 7 // android.view.View child
6: .line 1447
aload 0 /* this */
aload 7 /* child */
iload 1 /* position */
iload 2 /* y */
iload 3 /* flow */
iload 4 /* childrenLeft */
iload 5 /* selected */
aload 0 /* this */
getfield android.widget.GridView.mIsScrap:[Z
iconst_0
baload
iload 6 /* where */
invokevirtual android.widget.GridView.setupChild:(Landroid/view/View;IIZIZZI)V
7: .line 1449
aload 7 /* child */
areturn
end local 7 // android.view.View child
end local 6 // int where
end local 5 // boolean selected
end local 4 // int childrenLeft
end local 3 // boolean flow
end local 2 // int y
end local 1 // int position
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/widget/GridView;
0 8 1 position I
0 8 2 y I
0 8 3 flow Z
0 8 4 childrenLeft I
0 8 5 selected Z
0 8 6 where I
2 5 7 activeView Landroid/view/View;
6 8 7 child Landroid/view/View;
MethodParameters:
Name Flags
position
y
flow
childrenLeft
selected
where
private void setupChild(android.view.View, int, int, boolean, int, boolean, boolean, int);
descriptor: (Landroid/view/View;IIZIZZI)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=24, args_size=9
start local 0 // android.widget.GridView this
start local 1 // android.view.View child
start local 2 // int position
start local 3 // int y
start local 4 // boolean flowDown
start local 5 // int childrenLeft
start local 6 // boolean selected
start local 7 // boolean isAttachedToWindow
start local 8 // int where
0: .line 1472
ldc 8
ldc "setupGridItem"
invokestatic android.os.Trace.traceBegin:(JLjava/lang/String;)V
1: .line 1474
iload 6 /* selected */
ifeq 2
aload 0 /* this */
invokevirtual android.widget.GridView.shouldShowSelector:()Z
ifeq 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 9 /* isSelected */
start local 9 // boolean isSelected
4: .line 1475
iload 9 /* isSelected */
aload 1 /* child */
invokevirtual android.view.View.isSelected:()Z
ixor
istore 10 /* updateChildSelected */
start local 10 // boolean updateChildSelected
5: .line 1476
aload 0 /* this */
getfield android.widget.GridView.mTouchMode:I
istore 11 /* mode */
start local 11 // int mode
6: .line 1477
iload 11 /* mode */
ifle 9
iload 11 /* mode */
iconst_3
if_icmpge 9
7: .line 1478
aload 0 /* this */
getfield android.widget.GridView.mMotionPosition:I
iload 2 /* position */
if_icmpne 9
8: .line 1477
iconst_1
goto 10
StackMap locals: int int int
StackMap stack:
9: iconst_0
StackMap locals:
StackMap stack: int
10: istore 12 /* isPressed */
start local 12 // boolean isPressed
11: .line 1479
iload 12 /* isPressed */
aload 1 /* child */
invokevirtual android.view.View.isPressed:()Z
ixor
istore 13 /* updateChildPressed */
start local 13 // boolean updateChildPressed
12: .line 1480
iload 7 /* isAttachedToWindow */
ifeq 15
iload 10 /* updateChildSelected */
ifne 15
13: .line 1481
aload 1 /* child */
invokevirtual android.view.View.isLayoutRequested:()Z
ifne 15
14: .line 1480
iconst_0
goto 16
StackMap locals: int int
StackMap stack:
15: iconst_1
StackMap locals:
StackMap stack: int
16: istore 14 /* needToMeasure */
start local 14 // boolean needToMeasure
17: .line 1485
aload 1 /* child */
invokevirtual android.view.View.getLayoutParams:()Landroid/view/ViewGroup$LayoutParams;
checkcast android.widget.AbsListView$LayoutParams
astore 15 /* p */
start local 15 // android.widget.AbsListView$LayoutParams p
18: .line 1486
aload 15 /* p */
ifnonnull 20
19: .line 1487
aload 0 /* this */
invokevirtual android.widget.GridView.generateDefaultLayoutParams:()Landroid/view/ViewGroup$LayoutParams;
checkcast android.widget.AbsListView$LayoutParams
astore 15 /* p */
20: .line 1489
StackMap locals: int android.widget.AbsListView$LayoutParams
StackMap stack:
aload 15 /* p */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
iload 2 /* position */
invokeinterface android.widget.ListAdapter.getItemViewType:(I)I
putfield android.widget.AbsListView$LayoutParams.viewType:I
21: .line 1490
aload 15 /* p */
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
iload 2 /* position */
invokeinterface android.widget.ListAdapter.isEnabled:(I)Z
putfield android.widget.AbsListView$LayoutParams.isEnabled:Z
22: .line 1495
iload 10 /* updateChildSelected */
ifeq 26
23: .line 1496
aload 1 /* child */
iload 9 /* isSelected */
invokevirtual android.view.View.setSelected:(Z)V
24: .line 1497
iload 9 /* isSelected */
ifeq 26
25: .line 1498
aload 0 /* this */
invokevirtual android.widget.GridView.requestFocus:()Z
pop
26: .line 1502
StackMap locals:
StackMap stack:
iload 13 /* updateChildPressed */
ifeq 28
27: .line 1503
aload 1 /* child */
iload 12 /* isPressed */
invokevirtual android.view.View.setPressed:(Z)V
28: .line 1506
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mChoiceMode:I
ifeq 35
aload 0 /* this */
getfield android.widget.GridView.mCheckStates:Landroid/util/SparseBooleanArray;
ifnull 35
29: .line 1507
aload 1 /* child */
instanceof android.widget.Checkable
ifeq 32
30: .line 1508
aload 1 /* child */
checkcast android.widget.Checkable
aload 0 /* this */
getfield android.widget.GridView.mCheckStates:Landroid/util/SparseBooleanArray;
iload 2 /* position */
invokevirtual android.util.SparseBooleanArray.get:(I)Z
invokeinterface android.widget.Checkable.setChecked:(Z)V
31: .line 1509
goto 35
StackMap locals:
StackMap stack:
32: aload 0 /* this */
invokevirtual android.widget.GridView.getContext:()Landroid/content/Context;
invokevirtual android.content.Context.getApplicationInfo:()Landroid/content/pm/ApplicationInfo;
getfield android.content.pm.ApplicationInfo.targetSdkVersion:I
33: .line 1510
bipush 11
if_icmplt 35
34: .line 1511
aload 1 /* child */
aload 0 /* this */
getfield android.widget.GridView.mCheckStates:Landroid/util/SparseBooleanArray;
iload 2 /* position */
invokevirtual android.util.SparseBooleanArray.get:(I)Z
invokevirtual android.view.View.setActivated:(Z)V
35: .line 1515
StackMap locals:
StackMap stack:
iload 7 /* isAttachedToWindow */
ifeq 43
aload 15 /* p */
getfield android.widget.AbsListView$LayoutParams.forceAdd:Z
ifne 43
36: .line 1516
aload 0 /* this */
aload 1 /* child */
iload 8 /* where */
aload 15 /* p */
invokevirtual android.widget.GridView.attachViewToParent:(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V
37: .line 1520
iload 7 /* isAttachedToWindow */
ifeq 41
38: .line 1521
aload 1 /* child */
invokevirtual android.view.View.getLayoutParams:()Landroid/view/ViewGroup$LayoutParams;
checkcast android.widget.AbsListView$LayoutParams
getfield android.widget.AbsListView$LayoutParams.scrappedFromPosition:I
39: .line 1522
iload 2 /* position */
40: .line 1521
if_icmpeq 45
41: .line 1523
StackMap locals:
StackMap stack:
aload 1 /* child */
invokevirtual android.view.View.jumpDrawablesToCurrentState:()V
42: .line 1525
goto 45
43: .line 1526
StackMap locals:
StackMap stack:
aload 15 /* p */
iconst_0
putfield android.widget.AbsListView$LayoutParams.forceAdd:Z
44: .line 1527
aload 0 /* this */
aload 1 /* child */
iload 8 /* where */
aload 15 /* p */
iconst_1
invokevirtual android.widget.GridView.addViewInLayout:(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;Z)Z
pop
45: .line 1530
StackMap locals:
StackMap stack:
iload 14 /* needToMeasure */
ifeq 52
46: .line 1532
iconst_0
iconst_0
invokestatic android.view.View$MeasureSpec.makeMeasureSpec:(II)I
iconst_0
aload 15 /* p */
getfield android.widget.AbsListView$LayoutParams.height:I
47: .line 1531
invokestatic android.view.ViewGroup.getChildMeasureSpec:(III)I
istore 16 /* childHeightSpec */
start local 16 // int childHeightSpec
48: .line 1535
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
ldc 1073741824
invokestatic android.view.View$MeasureSpec.makeMeasureSpec:(II)I
iconst_0
aload 15 /* p */
getfield android.widget.AbsListView$LayoutParams.width:I
49: .line 1534
invokestatic android.view.ViewGroup.getChildMeasureSpec:(III)I
istore 17 /* childWidthSpec */
start local 17 // int childWidthSpec
50: .line 1536
aload 1 /* child */
iload 17 /* childWidthSpec */
iload 16 /* childHeightSpec */
invokevirtual android.view.View.measure:(II)V
end local 17 // int childWidthSpec
end local 16 // int childHeightSpec
51: .line 1537
goto 53
52: .line 1538
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* child */
invokevirtual android.widget.GridView.cleanupLayoutState:(Landroid/view/View;)V
53: .line 1541
StackMap locals:
StackMap stack:
aload 1 /* child */
invokevirtual android.view.View.getMeasuredWidth:()I
istore 16 /* w */
start local 16 // int w
54: .line 1542
aload 1 /* child */
invokevirtual android.view.View.getMeasuredHeight:()I
istore 17 /* h */
start local 17 // int h
55: .line 1545
iload 4 /* flowDown */
ifeq 56
iload 3 /* y */
goto 57
StackMap locals: int int
StackMap stack:
56: iload 3 /* y */
iload 17 /* h */
isub
StackMap locals:
StackMap stack: int
57: istore 19 /* childTop */
start local 19 // int childTop
58: .line 1547
aload 0 /* this */
invokevirtual android.widget.GridView.getLayoutDirection:()I
istore 20 /* layoutDirection */
start local 20 // int layoutDirection
59: .line 1548
aload 0 /* this */
getfield android.widget.GridView.mGravity:I
iload 20 /* layoutDirection */
invokestatic android.view.Gravity.getAbsoluteGravity:(II)I
istore 21 /* absoluteGravity */
start local 21 // int absoluteGravity
60: .line 1549
iload 21 /* absoluteGravity */
bipush 7
iand
tableswitch { // 1 - 5
1: 63
2: 67
3: 61
4: 67
5: 65
default: 67
}
61: .line 1551
StackMap locals: android.widget.GridView android.view.View int int int int int int int int int int int int int android.widget.AbsListView$LayoutParams int int top int int int
StackMap stack:
iload 5 /* childrenLeft */
istore 18 /* childLeft */
start local 18 // int childLeft
62: .line 1552
goto 68
end local 18 // int childLeft
63: .line 1554
StackMap locals:
StackMap stack:
iload 5 /* childrenLeft */
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
iload 16 /* w */
isub
iconst_2
idiv
iadd
istore 18 /* childLeft */
start local 18 // int childLeft
64: .line 1555
goto 68
end local 18 // int childLeft
65: .line 1557
StackMap locals:
StackMap stack:
iload 5 /* childrenLeft */
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
iadd
iload 16 /* w */
isub
istore 18 /* childLeft */
start local 18 // int childLeft
66: .line 1558
goto 68
end local 18 // int childLeft
67: .line 1560
StackMap locals:
StackMap stack:
iload 5 /* childrenLeft */
istore 18 /* childLeft */
start local 18 // int childLeft
68: .line 1564
StackMap locals: android.widget.GridView android.view.View int int int int int int int int int int int int int android.widget.AbsListView$LayoutParams int int int int int int
StackMap stack:
iload 14 /* needToMeasure */
ifeq 73
69: .line 1565
iload 18 /* childLeft */
iload 16 /* w */
iadd
istore 22 /* childRight */
start local 22 // int childRight
70: .line 1566
iload 19 /* childTop */
iload 17 /* h */
iadd
istore 23 /* childBottom */
start local 23 // int childBottom
71: .line 1567
aload 1 /* child */
iload 18 /* childLeft */
iload 19 /* childTop */
iload 22 /* childRight */
iload 23 /* childBottom */
invokevirtual android.view.View.layout:(IIII)V
end local 23 // int childBottom
end local 22 // int childRight
72: .line 1568
goto 75
73: .line 1569
StackMap locals:
StackMap stack:
aload 1 /* child */
iload 18 /* childLeft */
aload 1 /* child */
invokevirtual android.view.View.getLeft:()I
isub
invokevirtual android.view.View.offsetLeftAndRight:(I)V
74: .line 1570
aload 1 /* child */
iload 19 /* childTop */
aload 1 /* child */
invokevirtual android.view.View.getTop:()I
isub
invokevirtual android.view.View.offsetTopAndBottom:(I)V
75: .line 1573
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mCachingStarted:Z
ifeq 77
aload 1 /* child */
invokevirtual android.view.View.isDrawingCacheEnabled:()Z
ifne 77
76: .line 1574
aload 1 /* child */
iconst_1
invokevirtual android.view.View.setDrawingCacheEnabled:(Z)V
77: .line 1577
StackMap locals:
StackMap stack:
ldc 8
invokestatic android.os.Trace.traceEnd:(J)V
78: .line 1578
return
end local 21 // int absoluteGravity
end local 20 // int layoutDirection
end local 19 // int childTop
end local 18 // int childLeft
end local 17 // int h
end local 16 // int w
end local 15 // android.widget.AbsListView$LayoutParams p
end local 14 // boolean needToMeasure
end local 13 // boolean updateChildPressed
end local 12 // boolean isPressed
end local 11 // int mode
end local 10 // boolean updateChildSelected
end local 9 // boolean isSelected
end local 8 // int where
end local 7 // boolean isAttachedToWindow
end local 6 // boolean selected
end local 5 // int childrenLeft
end local 4 // boolean flowDown
end local 3 // int y
end local 2 // int position
end local 1 // android.view.View child
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 79 0 this Landroid/widget/GridView;
0 79 1 child Landroid/view/View;
0 79 2 position I
0 79 3 y I
0 79 4 flowDown Z
0 79 5 childrenLeft I
0 79 6 selected Z
0 79 7 isAttachedToWindow Z
0 79 8 where I
4 79 9 isSelected Z
5 79 10 updateChildSelected Z
6 79 11 mode I
11 79 12 isPressed Z
12 79 13 updateChildPressed Z
17 79 14 needToMeasure Z
18 79 15 p Landroid/widget/AbsListView$LayoutParams;
48 51 16 childHeightSpec I
50 51 17 childWidthSpec I
54 79 16 w I
55 79 17 h I
62 63 18 childLeft I
64 65 18 childLeft I
66 67 18 childLeft I
68 79 18 childLeft I
58 79 19 childTop I
59 79 20 layoutDirection I
60 79 21 absoluteGravity I
70 72 22 childRight I
71 72 23 childBottom I
MethodParameters:
Name Flags
child
position
y
flowDown
childrenLeft
selected
isAttachedToWindow
where
public void setSelection(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int position
0: .line 1590
aload 0 /* this */
invokevirtual android.widget.GridView.isInTouchMode:()Z
ifne 3
1: .line 1591
aload 0 /* this */
iload 1 /* position */
invokevirtual android.widget.GridView.setNextSelectedPositionInt:(I)V
2: .line 1592
goto 4
3: .line 1593
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* position */
putfield android.widget.GridView.mResurrectToPosition:I
4: .line 1595
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_2
putfield android.widget.GridView.mLayoutMode:I
5: .line 1596
aload 0 /* this */
getfield android.widget.GridView.mPositionScroller:Landroid/widget/AbsListView$AbsPositionScroller;
ifnull 7
6: .line 1597
aload 0 /* this */
getfield android.widget.GridView.mPositionScroller:Landroid/widget/AbsListView$AbsPositionScroller;
invokevirtual android.widget.AbsListView$AbsPositionScroller.stop:()V
7: .line 1599
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayout:()V
8: .line 1600
return
end local 1 // int position
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Landroid/widget/GridView;
0 9 1 position I
MethodParameters:
Name Flags
position
void setSelectionInt(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=2, locals=7, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int position
0: .line 1609
aload 0 /* this */
getfield android.widget.GridView.mNextSelectedPosition:I
istore 2 /* previousSelectedPosition */
start local 2 // int previousSelectedPosition
1: .line 1611
aload 0 /* this */
getfield android.widget.GridView.mPositionScroller:Landroid/widget/AbsListView$AbsPositionScroller;
ifnull 3
2: .line 1612
aload 0 /* this */
getfield android.widget.GridView.mPositionScroller:Landroid/widget/AbsListView$AbsPositionScroller;
invokevirtual android.widget.AbsListView$AbsPositionScroller.stop:()V
3: .line 1615
StackMap locals: int
StackMap stack:
aload 0 /* this */
iload 1 /* position */
invokevirtual android.widget.GridView.setNextSelectedPositionInt:(I)V
4: .line 1616
aload 0 /* this */
invokevirtual android.widget.GridView.layoutChildren:()V
5: .line 1618
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 6
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
aload 0 /* this */
getfield android.widget.GridView.mNextSelectedPosition:I
isub
goto 7
6: .line 1619
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mNextSelectedPosition:I
7: .line 1618
StackMap locals:
StackMap stack: int
istore 3 /* next */
start local 3 // int next
8: .line 1620
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifeq 10
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
9: .line 1621
iload 2 /* previousSelectedPosition */
isub
goto 11
StackMap locals: int
StackMap stack:
10: iload 2 /* previousSelectedPosition */
11: .line 1620
StackMap locals:
StackMap stack: int
istore 4 /* previous */
start local 4 // int previous
12: .line 1623
iload 3 /* next */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
idiv
istore 5 /* nextRow */
start local 5 // int nextRow
13: .line 1624
iload 4 /* previous */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
idiv
istore 6 /* previousRow */
start local 6 // int previousRow
14: .line 1626
iload 5 /* nextRow */
iload 6 /* previousRow */
if_icmpeq 16
15: .line 1627
aload 0 /* this */
invokevirtual android.widget.GridView.awakenScrollBars:()Z
pop
16: .line 1630
StackMap locals: int int int
StackMap stack:
return
end local 6 // int previousRow
end local 5 // int nextRow
end local 4 // int previous
end local 3 // int next
end local 2 // int previousSelectedPosition
end local 1 // int position
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/widget/GridView;
0 17 1 position I
1 17 2 previousSelectedPosition I
8 17 3 next I
12 17 4 previous I
13 17 5 nextRow I
14 17 6 previousRow I
MethodParameters:
Name Flags
position
public boolean onKeyDown(int, android.view.KeyEvent);
descriptor: (ILandroid/view/KeyEvent;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int keyCode
start local 2 // android.view.KeyEvent event
0: .line 1634
aload 0 /* this */
iload 1 /* keyCode */
iconst_1
aload 2 /* event */
invokevirtual android.widget.GridView.commonKey:(IILandroid/view/KeyEvent;)Z
ireturn
end local 2 // android.view.KeyEvent event
end local 1 // int keyCode
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
0 1 1 keyCode I
0 1 2 event Landroid/view/KeyEvent;
MethodParameters:
Name Flags
keyCode
event
public boolean onKeyMultiple(int, int, android.view.KeyEvent);
descriptor: (IILandroid/view/KeyEvent;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int keyCode
start local 2 // int repeatCount
start local 3 // android.view.KeyEvent event
0: .line 1639
aload 0 /* this */
iload 1 /* keyCode */
iload 2 /* repeatCount */
aload 3 /* event */
invokevirtual android.widget.GridView.commonKey:(IILandroid/view/KeyEvent;)Z
ireturn
end local 3 // android.view.KeyEvent event
end local 2 // int repeatCount
end local 1 // int keyCode
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
0 1 1 keyCode I
0 1 2 repeatCount I
0 1 3 event Landroid/view/KeyEvent;
MethodParameters:
Name Flags
keyCode
repeatCount
event
public boolean onKeyUp(int, android.view.KeyEvent);
descriptor: (ILandroid/view/KeyEvent;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int keyCode
start local 2 // android.view.KeyEvent event
0: .line 1644
aload 0 /* this */
iload 1 /* keyCode */
iconst_1
aload 2 /* event */
invokevirtual android.widget.GridView.commonKey:(IILandroid/view/KeyEvent;)Z
ireturn
end local 2 // android.view.KeyEvent event
end local 1 // int keyCode
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
0 1 1 keyCode I
0 1 2 event Landroid/view/KeyEvent;
MethodParameters:
Name Flags
keyCode
event
private boolean commonKey(int, int, android.view.KeyEvent);
descriptor: (IILandroid/view/KeyEvent;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=4
start local 0 // android.widget.GridView this
start local 1 // int keyCode
start local 2 // int count
start local 3 // android.view.KeyEvent event
0: .line 1648
aload 0 /* this */
getfield android.widget.GridView.mAdapter:Landroid/widget/ListAdapter;
ifnonnull 2
1: .line 1649
iconst_0
ireturn
2: .line 1652
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mDataChanged:Z
ifeq 4
3: .line 1653
aload 0 /* this */
invokevirtual android.widget.GridView.layoutChildren:()V
4: .line 1656
StackMap locals:
StackMap stack:
iconst_0
istore 4 /* handled */
start local 4 // boolean handled
5: .line 1657
aload 3 /* event */
invokevirtual android.view.KeyEvent.getAction:()I
istore 5 /* action */
start local 5 // int action
6: .line 1658
iload 1 /* keyCode */
invokestatic android.view.KeyEvent.isConfirmKey:(I)Z
ifeq 12
7: .line 1659
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 12
iload 5 /* action */
iconst_1
if_icmpeq 12
8: .line 1660
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
istore 4 /* handled */
9: .line 1661
iload 4 /* handled */
ifne 12
aload 3 /* event */
invokevirtual android.view.KeyEvent.getRepeatCount:()I
ifne 12
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
ifle 12
10: .line 1662
aload 0 /* this */
invokevirtual android.widget.GridView.keyPressed:()V
11: .line 1663
iconst_1
istore 4 /* handled */
12: .line 1667
StackMap locals: int int
StackMap stack:
iload 4 /* handled */
ifne 87
iload 5 /* action */
iconst_1
if_icmpeq 87
13: .line 1668
iload 1 /* keyCode */
lookupswitch { // 9
19: 24
20: 34
21: 14
22: 19
61: 74
92: 44
93: 54
122: 64
123: 69
default: 87
}
14: .line 1670
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 87
15: .line 1671
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 16
aload 0 /* this */
bipush 17
invokevirtual android.widget.GridView.arrowScroll:(I)Z
ifne 16
iconst_0
goto 17
StackMap locals:
StackMap stack:
16: iconst_1
StackMap locals:
StackMap stack: int
17: istore 4 /* handled */
18: .line 1673
goto 87
19: .line 1676
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 87
20: .line 1677
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 21
aload 0 /* this */
bipush 66
invokevirtual android.widget.GridView.arrowScroll:(I)Z
ifne 21
iconst_0
goto 22
StackMap locals:
StackMap stack:
21: iconst_1
StackMap locals:
StackMap stack: int
22: istore 4 /* handled */
23: .line 1679
goto 87
24: .line 1682
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 29
25: .line 1683
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 26
aload 0 /* this */
bipush 33
invokevirtual android.widget.GridView.arrowScroll:(I)Z
ifne 26
iconst_0
goto 27
StackMap locals:
StackMap stack:
26: iconst_1
StackMap locals:
StackMap stack: int
27: istore 4 /* handled */
28: .line 1684
goto 87
StackMap locals:
StackMap stack:
29: aload 3 /* event */
iconst_2
invokevirtual android.view.KeyEvent.hasModifiers:(I)Z
ifeq 87
30: .line 1685
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 31
aload 0 /* this */
bipush 33
invokevirtual android.widget.GridView.fullScroll:(I)Z
ifne 31
iconst_0
goto 32
StackMap locals:
StackMap stack:
31: iconst_1
StackMap locals:
StackMap stack: int
32: istore 4 /* handled */
33: .line 1687
goto 87
34: .line 1690
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 39
35: .line 1691
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 36
aload 0 /* this */
sipush 130
invokevirtual android.widget.GridView.arrowScroll:(I)Z
ifne 36
iconst_0
goto 37
StackMap locals:
StackMap stack:
36: iconst_1
StackMap locals:
StackMap stack: int
37: istore 4 /* handled */
38: .line 1692
goto 87
StackMap locals:
StackMap stack:
39: aload 3 /* event */
iconst_2
invokevirtual android.view.KeyEvent.hasModifiers:(I)Z
ifeq 87
40: .line 1693
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 41
aload 0 /* this */
sipush 130
invokevirtual android.widget.GridView.fullScroll:(I)Z
ifne 41
iconst_0
goto 42
StackMap locals:
StackMap stack:
41: iconst_1
StackMap locals:
StackMap stack: int
42: istore 4 /* handled */
43: .line 1695
goto 87
44: .line 1698
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 49
45: .line 1699
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 46
aload 0 /* this */
bipush 33
invokevirtual android.widget.GridView.pageScroll:(I)Z
ifne 46
iconst_0
goto 47
StackMap locals:
StackMap stack:
46: iconst_1
StackMap locals:
StackMap stack: int
47: istore 4 /* handled */
48: .line 1700
goto 87
StackMap locals:
StackMap stack:
49: aload 3 /* event */
iconst_2
invokevirtual android.view.KeyEvent.hasModifiers:(I)Z
ifeq 87
50: .line 1701
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 51
aload 0 /* this */
bipush 33
invokevirtual android.widget.GridView.fullScroll:(I)Z
ifne 51
iconst_0
goto 52
StackMap locals:
StackMap stack:
51: iconst_1
StackMap locals:
StackMap stack: int
52: istore 4 /* handled */
53: .line 1703
goto 87
54: .line 1706
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 59
55: .line 1707
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 56
aload 0 /* this */
sipush 130
invokevirtual android.widget.GridView.pageScroll:(I)Z
ifne 56
iconst_0
goto 57
StackMap locals:
StackMap stack:
56: iconst_1
StackMap locals:
StackMap stack: int
57: istore 4 /* handled */
58: .line 1708
goto 87
StackMap locals:
StackMap stack:
59: aload 3 /* event */
iconst_2
invokevirtual android.view.KeyEvent.hasModifiers:(I)Z
ifeq 87
60: .line 1709
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 61
aload 0 /* this */
sipush 130
invokevirtual android.widget.GridView.fullScroll:(I)Z
ifne 61
iconst_0
goto 62
StackMap locals:
StackMap stack:
61: iconst_1
StackMap locals:
StackMap stack: int
62: istore 4 /* handled */
63: .line 1711
goto 87
64: .line 1714
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 87
65: .line 1715
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 66
aload 0 /* this */
bipush 33
invokevirtual android.widget.GridView.fullScroll:(I)Z
ifne 66
iconst_0
goto 67
StackMap locals:
StackMap stack:
66: iconst_1
StackMap locals:
StackMap stack: int
67: istore 4 /* handled */
68: .line 1717
goto 87
69: .line 1720
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 87
70: .line 1721
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 71
aload 0 /* this */
sipush 130
invokevirtual android.widget.GridView.fullScroll:(I)Z
ifne 71
iconst_0
goto 72
StackMap locals:
StackMap stack:
71: iconst_1
StackMap locals:
StackMap stack: int
72: istore 4 /* handled */
73: .line 1723
goto 87
74: .line 1731
StackMap locals:
StackMap stack:
aload 3 /* event */
invokevirtual android.view.KeyEvent.hasNoModifiers:()Z
ifeq 81
75: .line 1732
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 78
76: .line 1733
aload 0 /* this */
iconst_2
invokevirtual android.widget.GridView.sequenceScroll:(I)Z
ifne 78
77: .line 1732
iconst_0
goto 79
StackMap locals:
StackMap stack:
78: iconst_1
StackMap locals:
StackMap stack: int
79: istore 4 /* handled */
80: .line 1734
goto 87
StackMap locals:
StackMap stack:
81: aload 3 /* event */
iconst_1
invokevirtual android.view.KeyEvent.hasModifiers:(I)Z
ifeq 87
82: .line 1735
aload 0 /* this */
invokevirtual android.widget.GridView.resurrectSelectionIfNeeded:()Z
ifne 85
83: .line 1736
aload 0 /* this */
iconst_1
invokevirtual android.widget.GridView.sequenceScroll:(I)Z
ifne 85
84: .line 1735
iconst_0
goto 86
StackMap locals:
StackMap stack:
85: iconst_1
StackMap locals:
StackMap stack: int
86: istore 4 /* handled */
87: .line 1742
StackMap locals:
StackMap stack:
iload 4 /* handled */
ifeq 89
88: .line 1743
iconst_1
ireturn
89: .line 1746
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* keyCode */
iload 2 /* count */
aload 3 /* event */
invokevirtual android.widget.GridView.sendToTextFilter:(IILandroid/view/KeyEvent;)Z
ifeq 91
90: .line 1747
iconst_1
ireturn
91: .line 1750
StackMap locals:
StackMap stack:
iload 5 /* action */
tableswitch { // 0 - 2
0: 92
1: 93
2: 94
default: 95
}
92: .line 1752
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* keyCode */
aload 3 /* event */
invokespecial android.widget.AbsListView.onKeyDown:(ILandroid/view/KeyEvent;)Z
ireturn
93: .line 1754
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* keyCode */
aload 3 /* event */
invokespecial android.widget.AbsListView.onKeyUp:(ILandroid/view/KeyEvent;)Z
ireturn
94: .line 1756
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* keyCode */
iload 2 /* count */
aload 3 /* event */
invokespecial android.widget.AbsListView.onKeyMultiple:(IILandroid/view/KeyEvent;)Z
ireturn
95: .line 1758
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 5 // int action
end local 4 // boolean handled
end local 3 // android.view.KeyEvent event
end local 2 // int count
end local 1 // int keyCode
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 96 0 this Landroid/widget/GridView;
0 96 1 keyCode I
0 96 2 count I
0 96 3 event Landroid/view/KeyEvent;
5 96 4 handled Z
6 96 5 action I
MethodParameters:
Name Flags
keyCode
count
event
boolean pageScroll(int);
descriptor: (I)Z
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int direction
0: .line 1769
iconst_m1
istore 2 /* nextPage */
start local 2 // int nextPage
1: .line 1771
iload 1 /* direction */
bipush 33
if_icmpne 4
2: .line 1772
iconst_0
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
isub
invokestatic java.lang.Math.max:(II)I
istore 2 /* nextPage */
3: .line 1773
goto 6
StackMap locals: int
StackMap stack:
4: iload 1 /* direction */
sipush 130
if_icmpne 6
5: .line 1774
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
iadd
invokestatic java.lang.Math.min:(II)I
istore 2 /* nextPage */
6: .line 1777
StackMap locals:
StackMap stack:
iload 2 /* nextPage */
iflt 11
7: .line 1778
aload 0 /* this */
iload 2 /* nextPage */
invokevirtual android.widget.GridView.setSelectionInt:(I)V
8: .line 1779
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
9: .line 1780
aload 0 /* this */
invokevirtual android.widget.GridView.awakenScrollBars:()Z
pop
10: .line 1781
iconst_1
ireturn
11: .line 1784
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 // int nextPage
end local 1 // int direction
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Landroid/widget/GridView;
0 12 1 direction I
1 12 2 nextPage I
MethodParameters:
Name Flags
direction
boolean fullScroll(int);
descriptor: (I)Z
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int direction
0: .line 1795
iconst_0
istore 2 /* moved */
start local 2 // boolean moved
1: .line 1796
iload 1 /* direction */
bipush 33
if_icmpne 7
2: .line 1797
aload 0 /* this */
iconst_2
putfield android.widget.GridView.mLayoutMode:I
3: .line 1798
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.setSelectionInt:(I)V
4: .line 1799
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
5: .line 1800
iconst_1
istore 2 /* moved */
6: .line 1801
goto 12
StackMap locals: int
StackMap stack:
7: iload 1 /* direction */
sipush 130
if_icmpne 12
8: .line 1802
aload 0 /* this */
iconst_2
putfield android.widget.GridView.mLayoutMode:I
9: .line 1803
aload 0 /* this */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
invokevirtual android.widget.GridView.setSelectionInt:(I)V
10: .line 1804
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
11: .line 1805
iconst_1
istore 2 /* moved */
12: .line 1808
StackMap locals:
StackMap stack:
iload 2 /* moved */
ifeq 14
13: .line 1809
aload 0 /* this */
invokevirtual android.widget.GridView.awakenScrollBars:()Z
pop
14: .line 1812
StackMap locals:
StackMap stack:
iload 2 /* moved */
ireturn
end local 2 // boolean moved
end local 1 // int direction
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Landroid/widget/GridView;
0 15 1 direction I
1 15 2 moved Z
MethodParameters:
Name Flags
direction
boolean arrowScroll(int);
descriptor: (I)Z
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int direction
0: .line 1824
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
istore 2 /* selectedPosition */
start local 2 // int selectedPosition
1: .line 1825
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 3 /* numColumns */
start local 3 // int numColumns
2: .line 1830
iconst_0
istore 6 /* moved */
start local 6 // boolean moved
3: .line 1832
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 7
4: .line 1833
iload 2 /* selectedPosition */
iload 3 /* numColumns */
idiv
iload 3 /* numColumns */
imul
istore 4 /* startOfRowPos */
start local 4 // int startOfRowPos
5: .line 1834
iload 4 /* startOfRowPos */
iload 3 /* numColumns */
iadd
iconst_1
isub
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 5 /* endOfRowPos */
start local 5 // int endOfRowPos
6: .line 1835
goto 10
end local 5 // int endOfRowPos
end local 4 // int startOfRowPos
7: .line 1836
StackMap locals: android.widget.GridView int int int top top int
StackMap stack:
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 2 /* selectedPosition */
isub
istore 7 /* invertedSelection */
start local 7 // int invertedSelection
8: .line 1837
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
iload 7 /* invertedSelection */
iload 3 /* numColumns */
idiv
iload 3 /* numColumns */
imul
isub
istore 5 /* endOfRowPos */
start local 5 // int endOfRowPos
9: .line 1838
iconst_0
iload 5 /* endOfRowPos */
iload 3 /* numColumns */
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 4 /* startOfRowPos */
end local 7 // int invertedSelection
start local 4 // int startOfRowPos
10: .line 1841
StackMap locals: android.widget.GridView int int int int int int
StackMap stack:
iload 1 /* direction */
lookupswitch { // 2
33: 11
130: 16
default: 20
}
11: .line 1843
StackMap locals:
StackMap stack:
iload 4 /* startOfRowPos */
ifle 20
12: .line 1844
aload 0 /* this */
bipush 6
putfield android.widget.GridView.mLayoutMode:I
13: .line 1845
aload 0 /* this */
iconst_0
iload 2 /* selectedPosition */
iload 3 /* numColumns */
isub
invokestatic java.lang.Math.max:(II)I
invokevirtual android.widget.GridView.setSelectionInt:(I)V
14: .line 1846
iconst_1
istore 6 /* moved */
15: .line 1848
goto 20
16: .line 1850
StackMap locals:
StackMap stack:
iload 5 /* endOfRowPos */
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
if_icmpge 20
17: .line 1851
aload 0 /* this */
bipush 6
putfield android.widget.GridView.mLayoutMode:I
18: .line 1852
aload 0 /* this */
iload 2 /* selectedPosition */
iload 3 /* numColumns */
iadd
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
invokevirtual android.widget.GridView.setSelectionInt:(I)V
19: .line 1853
iconst_1
istore 6 /* moved */
20: .line 1858
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.isLayoutRtl:()Z
istore 7 /* isLayoutRtl */
start local 7 // boolean isLayoutRtl
21: .line 1859
iload 2 /* selectedPosition */
iload 4 /* startOfRowPos */
if_icmple 27
iload 1 /* direction */
bipush 17
if_icmpne 22
iload 7 /* isLayoutRtl */
ifeq 23
22: .line 1860
StackMap locals: int
StackMap stack:
iload 1 /* direction */
bipush 66
if_icmpne 27
iload 7 /* isLayoutRtl */
ifeq 27
23: .line 1861
StackMap locals:
StackMap stack:
aload 0 /* this */
bipush 6
putfield android.widget.GridView.mLayoutMode:I
24: .line 1862
aload 0 /* this */
iconst_0
iload 2 /* selectedPosition */
iconst_1
isub
invokestatic java.lang.Math.max:(II)I
invokevirtual android.widget.GridView.setSelectionInt:(I)V
25: .line 1863
iconst_1
istore 6 /* moved */
26: .line 1864
goto 32
StackMap locals:
StackMap stack:
27: iload 2 /* selectedPosition */
iload 5 /* endOfRowPos */
if_icmpge 32
iload 1 /* direction */
bipush 17
if_icmpne 28
iload 7 /* isLayoutRtl */
ifne 29
28: .line 1865
StackMap locals:
StackMap stack:
iload 1 /* direction */
bipush 66
if_icmpne 32
iload 7 /* isLayoutRtl */
ifne 32
29: .line 1866
StackMap locals:
StackMap stack:
aload 0 /* this */
bipush 6
putfield android.widget.GridView.mLayoutMode:I
30: .line 1867
aload 0 /* this */
iload 2 /* selectedPosition */
iconst_1
iadd
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
invokevirtual android.widget.GridView.setSelectionInt:(I)V
31: .line 1868
iconst_1
istore 6 /* moved */
32: .line 1871
StackMap locals:
StackMap stack:
iload 6 /* moved */
ifeq 35
33: .line 1872
aload 0 /* this */
iload 1 /* direction */
invokestatic android.view.SoundEffectConstants.getContantForFocusDirection:(I)I
invokevirtual android.widget.GridView.playSoundEffect:(I)V
34: .line 1873
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
35: .line 1876
StackMap locals:
StackMap stack:
iload 6 /* moved */
ifeq 37
36: .line 1877
aload 0 /* this */
invokevirtual android.widget.GridView.awakenScrollBars:()Z
pop
37: .line 1880
StackMap locals:
StackMap stack:
iload 6 /* moved */
ireturn
end local 7 // boolean isLayoutRtl
end local 6 // boolean moved
end local 5 // int endOfRowPos
end local 4 // int startOfRowPos
end local 3 // int numColumns
end local 2 // int selectedPosition
end local 1 // int direction
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Landroid/widget/GridView;
0 38 1 direction I
1 38 2 selectedPosition I
2 38 3 numColumns I
5 7 4 startOfRowPos I
10 38 4 startOfRowPos I
6 7 5 endOfRowPos I
9 38 5 endOfRowPos I
3 38 6 moved Z
8 10 7 invertedSelection I
21 38 7 isLayoutRtl Z
MethodParameters:
Name Flags
direction
boolean sequenceScroll(int);
descriptor: (I)Z
flags: (0x0000)
Code:
stack=3, locals=9, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int direction
0: .line 1888
aload 0 /* this */
getfield android.widget.GridView.mSelectedPosition:I
istore 2 /* selectedPosition */
start local 2 // int selectedPosition
1: .line 1889
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 3 /* numColumns */
start local 3 // int numColumns
2: .line 1890
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
istore 4 /* count */
start local 4 // int count
3: .line 1894
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 7
4: .line 1895
iload 2 /* selectedPosition */
iload 3 /* numColumns */
idiv
iload 3 /* numColumns */
imul
istore 5 /* startOfRow */
start local 5 // int startOfRow
5: .line 1896
iload 5 /* startOfRow */
iload 3 /* numColumns */
iadd
iconst_1
isub
iload 4 /* count */
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
istore 6 /* endOfRow */
start local 6 // int endOfRow
6: .line 1897
goto 10
end local 6 // int endOfRow
end local 5 // int startOfRow
7: .line 1898
StackMap locals: int int int
StackMap stack:
iload 4 /* count */
iconst_1
isub
iload 2 /* selectedPosition */
isub
istore 7 /* invertedSelection */
start local 7 // int invertedSelection
8: .line 1899
iload 4 /* count */
iconst_1
isub
iload 7 /* invertedSelection */
iload 3 /* numColumns */
idiv
iload 3 /* numColumns */
imul
isub
istore 6 /* endOfRow */
start local 6 // int endOfRow
9: .line 1900
iconst_0
iload 6 /* endOfRow */
iload 3 /* numColumns */
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 5 /* startOfRow */
end local 7 // int invertedSelection
start local 5 // int startOfRow
10: .line 1903
StackMap locals: int int
StackMap stack:
iconst_0
istore 7 /* moved */
start local 7 // boolean moved
11: .line 1904
iconst_0
istore 8 /* showScroll */
start local 8 // boolean showScroll
12: .line 1905
iload 1 /* direction */
tableswitch { // 1 - 2
1: 21
2: 13
default: 28
}
13: .line 1907
StackMap locals: int int
StackMap stack:
iload 2 /* selectedPosition */
iload 4 /* count */
iconst_1
isub
if_icmpge 28
14: .line 1909
aload 0 /* this */
bipush 6
putfield android.widget.GridView.mLayoutMode:I
15: .line 1910
aload 0 /* this */
iload 2 /* selectedPosition */
iconst_1
iadd
invokevirtual android.widget.GridView.setSelectionInt:(I)V
16: .line 1911
iconst_1
istore 7 /* moved */
17: .line 1913
iload 2 /* selectedPosition */
iload 6 /* endOfRow */
if_icmpne 18
iconst_1
goto 19
StackMap locals:
StackMap stack:
18: iconst_0
StackMap locals:
StackMap stack: int
19: istore 8 /* showScroll */
20: .line 1915
goto 28
21: .line 1918
StackMap locals:
StackMap stack:
iload 2 /* selectedPosition */
ifle 28
22: .line 1920
aload 0 /* this */
bipush 6
putfield android.widget.GridView.mLayoutMode:I
23: .line 1921
aload 0 /* this */
iload 2 /* selectedPosition */
iconst_1
isub
invokevirtual android.widget.GridView.setSelectionInt:(I)V
24: .line 1922
iconst_1
istore 7 /* moved */
25: .line 1924
iload 2 /* selectedPosition */
iload 5 /* startOfRow */
if_icmpne 26
iconst_1
goto 27
StackMap locals:
StackMap stack:
26: iconst_0
StackMap locals:
StackMap stack: int
27: istore 8 /* showScroll */
28: .line 1929
StackMap locals:
StackMap stack:
iload 7 /* moved */
ifeq 31
29: .line 1930
aload 0 /* this */
iload 1 /* direction */
invokestatic android.view.SoundEffectConstants.getContantForFocusDirection:(I)I
invokevirtual android.widget.GridView.playSoundEffect:(I)V
30: .line 1931
aload 0 /* this */
invokevirtual android.widget.GridView.invokeOnItemScrollListener:()V
31: .line 1934
StackMap locals:
StackMap stack:
iload 8 /* showScroll */
ifeq 33
32: .line 1935
aload 0 /* this */
invokevirtual android.widget.GridView.awakenScrollBars:()Z
pop
33: .line 1938
StackMap locals:
StackMap stack:
iload 7 /* moved */
ireturn
end local 8 // boolean showScroll
end local 7 // boolean moved
end local 6 // int endOfRow
end local 5 // int startOfRow
end local 4 // int count
end local 3 // int numColumns
end local 2 // int selectedPosition
end local 1 // int direction
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Landroid/widget/GridView;
0 34 1 direction I
1 34 2 selectedPosition I
2 34 3 numColumns I
3 34 4 count I
5 7 5 startOfRow I
10 34 5 startOfRow I
6 7 6 endOfRow I
9 34 6 endOfRow I
8 10 7 invertedSelection I
11 34 7 moved Z
12 34 8 showScroll Z
MethodParameters:
Name Flags
direction
protected void onFocusChanged(boolean, int, android.graphics.Rect);
descriptor: (ZILandroid/graphics/Rect;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=11, args_size=4
start local 0 // android.widget.GridView this
start local 1 // boolean gainFocus
start local 2 // int direction
start local 3 // android.graphics.Rect previouslyFocusedRect
0: .line 1943
aload 0 /* this */
iload 1 /* gainFocus */
iload 2 /* direction */
aload 3 /* previouslyFocusedRect */
invokespecial android.widget.AbsListView.onFocusChanged:(ZILandroid/graphics/Rect;)V
1: .line 1945
iconst_m1
istore 4 /* closestChildIndex */
start local 4 // int closestChildIndex
2: .line 1946
iload 1 /* gainFocus */
ifeq 20
aload 3 /* previouslyFocusedRect */
ifnull 20
3: .line 1947
aload 3 /* previouslyFocusedRect */
aload 0 /* this */
getfield android.widget.GridView.mScrollX:I
aload 0 /* this */
getfield android.widget.GridView.mScrollY:I
invokevirtual android.graphics.Rect.offset:(II)V
4: .line 1951
aload 0 /* this */
getfield android.widget.GridView.mTempRect:Landroid/graphics/Rect;
astore 5 /* otherRect */
start local 5 // android.graphics.Rect otherRect
5: .line 1952
ldc 2147483647
istore 6 /* minDistance */
start local 6 // int minDistance
6: .line 1953
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 7 /* childCount */
start local 7 // int childCount
7: .line 1954
iconst_0
istore 8 /* i */
start local 8 // int i
8: goto 19
9: .line 1956
StackMap locals: android.widget.GridView int int android.graphics.Rect int android.graphics.Rect int int int
StackMap stack:
aload 0 /* this */
iload 8 /* i */
iload 2 /* direction */
invokevirtual android.widget.GridView.isCandidateSelection:(II)Z
ifne 11
10: .line 1957
goto 18
11: .line 1960
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 8 /* i */
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 9 /* other */
start local 9 // android.view.View other
12: .line 1961
aload 9 /* other */
aload 5 /* otherRect */
invokevirtual android.view.View.getDrawingRect:(Landroid/graphics/Rect;)V
13: .line 1962
aload 0 /* this */
aload 9 /* other */
aload 5 /* otherRect */
invokevirtual android.widget.GridView.offsetDescendantRectToMyCoords:(Landroid/view/View;Landroid/graphics/Rect;)V
14: .line 1963
aload 3 /* previouslyFocusedRect */
aload 5 /* otherRect */
iload 2 /* direction */
invokestatic android.widget.GridView.getDistance:(Landroid/graphics/Rect;Landroid/graphics/Rect;I)I
istore 10 /* distance */
start local 10 // int distance
15: .line 1965
iload 10 /* distance */
iload 6 /* minDistance */
if_icmpge 18
16: .line 1966
iload 10 /* distance */
istore 6 /* minDistance */
17: .line 1967
iload 8 /* i */
istore 4 /* closestChildIndex */
end local 10 // int distance
end local 9 // android.view.View other
18: .line 1954
StackMap locals:
StackMap stack:
iinc 8 /* i */ 1
StackMap locals:
StackMap stack:
19: iload 8 /* i */
iload 7 /* childCount */
if_icmplt 9
end local 8 // int i
end local 7 // int childCount
end local 6 // int minDistance
end local 5 // android.graphics.Rect otherRect
20: .line 1972
StackMap locals: android.widget.GridView int int android.graphics.Rect int
StackMap stack:
iload 4 /* closestChildIndex */
iflt 23
21: .line 1973
aload 0 /* this */
iload 4 /* closestChildIndex */
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iadd
invokevirtual android.widget.GridView.setSelection:(I)V
22: .line 1974
goto 24
23: .line 1975
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayout:()V
24: .line 1977
StackMap locals:
StackMap stack:
return
end local 4 // int closestChildIndex
end local 3 // android.graphics.Rect previouslyFocusedRect
end local 2 // int direction
end local 1 // boolean gainFocus
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Landroid/widget/GridView;
0 25 1 gainFocus Z
0 25 2 direction I
0 25 3 previouslyFocusedRect Landroid/graphics/Rect;
2 25 4 closestChildIndex I
5 20 5 otherRect Landroid/graphics/Rect;
6 20 6 minDistance I
7 20 7 childCount I
8 20 8 i I
12 18 9 other Landroid/view/View;
15 18 10 distance I
MethodParameters:
Name Flags
gainFocus
direction
previouslyFocusedRect
private boolean isCandidateSelection(int, int);
descriptor: (II)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=3
start local 0 // android.widget.GridView this
start local 1 // int childIndex
start local 2 // int direction
0: .line 1988
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 3 /* count */
start local 3 // int count
1: .line 1989
iload 3 /* count */
iconst_1
isub
iload 1 /* childIndex */
isub
istore 4 /* invertedIndex */
start local 4 // int invertedIndex
2: .line 1994
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 6
3: .line 1995
iload 1 /* childIndex */
iload 1 /* childIndex */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
irem
isub
istore 5 /* rowStart */
start local 5 // int rowStart
4: .line 1996
iload 5 /* rowStart */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
iadd
iconst_1
isub
iload 3 /* count */
invokestatic java.lang.Math.min:(II)I
istore 6 /* rowEnd */
start local 6 // int rowEnd
5: .line 1997
goto 8
end local 6 // int rowEnd
end local 5 // int rowStart
6: .line 1998
StackMap locals: int int
StackMap stack:
iload 3 /* count */
iconst_1
isub
iload 4 /* invertedIndex */
iload 4 /* invertedIndex */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
irem
isub
isub
istore 6 /* rowEnd */
start local 6 // int rowEnd
7: .line 1999
iconst_0
iload 6 /* rowEnd */
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
isub
iconst_1
iadd
invokestatic java.lang.Math.max:(II)I
istore 5 /* rowStart */
start local 5 // int rowStart
8: .line 2002
StackMap locals: int int
StackMap stack:
iload 2 /* direction */
lookupswitch { // 6
1: 19
2: 17
17: 13
33: 15
66: 9
130: 11
default: 21
}
9: .line 2006
StackMap locals:
StackMap stack:
iload 1 /* childIndex */
iload 5 /* rowStart */
if_icmpne 10
iconst_1
ireturn
StackMap locals:
StackMap stack:
10: iconst_0
ireturn
11: .line 2009
StackMap locals:
StackMap stack:
iload 5 /* rowStart */
ifne 12
iconst_1
ireturn
StackMap locals:
StackMap stack:
12: iconst_0
ireturn
13: .line 2012
StackMap locals:
StackMap stack:
iload 1 /* childIndex */
iload 6 /* rowEnd */
if_icmpne 14
iconst_1
ireturn
StackMap locals:
StackMap stack:
14: iconst_0
ireturn
15: .line 2015
StackMap locals:
StackMap stack:
iload 6 /* rowEnd */
iload 3 /* count */
iconst_1
isub
if_icmpne 16
iconst_1
ireturn
StackMap locals:
StackMap stack:
16: iconst_0
ireturn
17: .line 2018
StackMap locals:
StackMap stack:
iload 1 /* childIndex */
iload 5 /* rowStart */
if_icmpne 18
iload 5 /* rowStart */
ifne 18
iconst_1
ireturn
StackMap locals:
StackMap stack:
18: iconst_0
ireturn
19: .line 2021
StackMap locals:
StackMap stack:
iload 1 /* childIndex */
iload 6 /* rowEnd */
if_icmpne 20
iload 6 /* rowEnd */
iload 3 /* count */
iconst_1
isub
if_icmpne 20
iconst_1
ireturn
StackMap locals:
StackMap stack:
20: iconst_0
ireturn
21: .line 2023
StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "direction must be one of {FOCUS_UP, FOCUS_DOWN, FOCUS_LEFT, FOCUS_RIGHT, FOCUS_FORWARD, FOCUS_BACKWARD}."
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 6 // int rowEnd
end local 5 // int rowStart
end local 4 // int invertedIndex
end local 3 // int count
end local 2 // int direction
end local 1 // int childIndex
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Landroid/widget/GridView;
0 22 1 childIndex I
0 22 2 direction I
1 22 3 count I
2 22 4 invertedIndex I
4 6 5 rowStart I
8 22 5 rowStart I
5 6 6 rowEnd I
7 22 6 rowEnd I
MethodParameters:
Name Flags
childIndex
direction
public void setGravity(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int gravity
0: .line 2038
aload 0 /* this */
getfield android.widget.GridView.mGravity:I
iload 1 /* gravity */
if_icmpeq 3
1: .line 2039
aload 0 /* this */
iload 1 /* gravity */
putfield android.widget.GridView.mGravity:I
2: .line 2040
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayoutIfNecessary:()V
3: .line 2042
StackMap locals:
StackMap stack:
return
end local 1 // int gravity
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 gravity I
MethodParameters:
Name Flags
gravity
public int getGravity();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2052
aload 0 /* this */
getfield android.widget.GridView.mGravity:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public void setHorizontalSpacing(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int horizontalSpacing
0: .line 2065
iload 1 /* horizontalSpacing */
aload 0 /* this */
getfield android.widget.GridView.mRequestedHorizontalSpacing:I
if_icmpeq 3
1: .line 2066
aload 0 /* this */
iload 1 /* horizontalSpacing */
putfield android.widget.GridView.mRequestedHorizontalSpacing:I
2: .line 2067
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayoutIfNecessary:()V
3: .line 2069
StackMap locals:
StackMap stack:
return
end local 1 // int horizontalSpacing
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 horizontalSpacing I
MethodParameters:
Name Flags
horizontalSpacing
public int getHorizontalSpacing();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2087
aload 0 /* this */
getfield android.widget.GridView.mHorizontalSpacing:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public int getRequestedHorizontalSpacing();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2107
aload 0 /* this */
getfield android.widget.GridView.mRequestedHorizontalSpacing:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public void setVerticalSpacing(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int verticalSpacing
0: .line 2122
iload 1 /* verticalSpacing */
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
if_icmpeq 3
1: .line 2123
aload 0 /* this */
iload 1 /* verticalSpacing */
putfield android.widget.GridView.mVerticalSpacing:I
2: .line 2124
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayoutIfNecessary:()V
3: .line 2126
StackMap locals:
StackMap stack:
return
end local 1 // int verticalSpacing
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 verticalSpacing I
MethodParameters:
Name Flags
verticalSpacing
public int getVerticalSpacing();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2138
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public void setStretchMode(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int stretchMode
0: .line 2150
iload 1 /* stretchMode */
aload 0 /* this */
getfield android.widget.GridView.mStretchMode:I
if_icmpeq 3
1: .line 2151
aload 0 /* this */
iload 1 /* stretchMode */
putfield android.widget.GridView.mStretchMode:I
2: .line 2152
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayoutIfNecessary:()V
3: .line 2154
StackMap locals:
StackMap stack:
return
end local 1 // int stretchMode
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 stretchMode I
MethodParameters:
Name Flags
stretchMode
public int getStretchMode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2158
aload 0 /* this */
getfield android.widget.GridView.mStretchMode:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public void setColumnWidth(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int columnWidth
0: .line 2169
iload 1 /* columnWidth */
aload 0 /* this */
getfield android.widget.GridView.mRequestedColumnWidth:I
if_icmpeq 3
1: .line 2170
aload 0 /* this */
iload 1 /* columnWidth */
putfield android.widget.GridView.mRequestedColumnWidth:I
2: .line 2171
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayoutIfNecessary:()V
3: .line 2173
StackMap locals:
StackMap stack:
return
end local 1 // int columnWidth
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 columnWidth I
MethodParameters:
Name Flags
columnWidth
public int getColumnWidth();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2188
aload 0 /* this */
getfield android.widget.GridView.mColumnWidth:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public int getRequestedColumnWidth();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2205
aload 0 /* this */
getfield android.widget.GridView.mRequestedColumnWidth:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public void setNumColumns(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // int numColumns
0: .line 2216
iload 1 /* numColumns */
aload 0 /* this */
getfield android.widget.GridView.mRequestedNumColumns:I
if_icmpeq 3
1: .line 2217
aload 0 /* this */
iload 1 /* numColumns */
putfield android.widget.GridView.mRequestedNumColumns:I
2: .line 2218
aload 0 /* this */
invokevirtual android.widget.GridView.requestLayoutIfNecessary:()V
3: .line 2220
StackMap locals:
StackMap stack:
return
end local 1 // int numColumns
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/GridView;
0 4 1 numColumns I
MethodParameters:
Name Flags
numColumns
public int getNumColumns();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2232
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
RuntimeVisibleAnnotations:
android.view.ViewDebug$ExportedProperty()
private void adjustViewsUpOrDown();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 // android.widget.GridView this
0: .line 2240
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 1 /* childCount */
start local 1 // int childCount
1: .line 2242
iload 1 /* childCount */
ifle 18
2: .line 2246
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 10
3: .line 2249
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 3 /* child */
start local 3 // android.view.View child
4: .line 2250
aload 3 /* child */
invokevirtual android.view.View.getTop:()I
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.top:I
isub
istore 2 /* delta */
start local 2 // int delta
5: .line 2251
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
ifeq 7
6: .line 2254
iload 2 /* delta */
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
isub
istore 2 /* delta */
7: .line 2256
StackMap locals: int int android.view.View
StackMap stack:
iload 2 /* delta */
ifge 16
8: .line 2258
iconst_0
istore 2 /* delta */
9: .line 2260
goto 16
end local 3 // android.view.View child
end local 2 // int delta
10: .line 2262
StackMap locals:
StackMap stack:
aload 0 /* this */
iload 1 /* childCount */
iconst_1
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 3 /* child */
start local 3 // android.view.View child
11: .line 2263
aload 3 /* child */
invokevirtual android.view.View.getBottom:()I
aload 0 /* this */
invokevirtual android.widget.GridView.getHeight:()I
aload 0 /* this */
getfield android.widget.GridView.mListPadding:Landroid/graphics/Rect;
getfield android.graphics.Rect.bottom:I
isub
isub
istore 2 /* delta */
start local 2 // int delta
12: .line 2265
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 1 /* childCount */
iadd
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
if_icmpge 14
13: .line 2268
iload 2 /* delta */
aload 0 /* this */
getfield android.widget.GridView.mVerticalSpacing:I
iadd
istore 2 /* delta */
14: .line 2271
StackMap locals: int android.view.View
StackMap stack:
iload 2 /* delta */
ifle 16
15: .line 2273
iconst_0
istore 2 /* delta */
16: .line 2277
StackMap locals:
StackMap stack:
iload 2 /* delta */
ifeq 18
17: .line 2278
aload 0 /* this */
iload 2 /* delta */
ineg
invokevirtual android.widget.GridView.offsetChildrenTopAndBottom:(I)V
end local 3 // android.view.View child
end local 2 // int delta
18: .line 2281
StackMap locals:
StackMap stack:
return
end local 1 // int childCount
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Landroid/widget/GridView;
1 19 1 childCount I
5 10 2 delta I
12 18 2 delta I
4 10 3 child Landroid/view/View;
11 18 3 child Landroid/view/View;
protected int computeVerticalScrollExtent();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=9, args_size=1
start local 0 // android.widget.GridView this
0: .line 2285
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
istore 1 /* count */
start local 1 // int count
1: .line 2286
iload 1 /* count */
ifle 16
2: .line 2287
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 2 /* numColumns */
start local 2 // int numColumns
3: .line 2288
iload 1 /* count */
iload 2 /* numColumns */
iadd
iconst_1
isub
iload 2 /* numColumns */
idiv
istore 3 /* rowCount */
start local 3 // int rowCount
4: .line 2290
iload 3 /* rowCount */
bipush 100
imul
istore 4 /* extent */
start local 4 // int extent
5: .line 2292
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 5 /* view */
start local 5 // android.view.View view
6: .line 2293
aload 5 /* view */
invokevirtual android.view.View.getTop:()I
istore 6 /* top */
start local 6 // int top
7: .line 2294
aload 5 /* view */
invokevirtual android.view.View.getHeight:()I
istore 7 /* height */
start local 7 // int height
8: .line 2295
iload 7 /* height */
ifle 10
9: .line 2296
iload 4 /* extent */
iload 6 /* top */
bipush 100
imul
iload 7 /* height */
idiv
iadd
istore 4 /* extent */
10: .line 2299
StackMap locals: android.widget.GridView int int int int android.view.View int int
StackMap stack:
aload 0 /* this */
iload 1 /* count */
iconst_1
isub
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 5 /* view */
11: .line 2300
aload 5 /* view */
invokevirtual android.view.View.getBottom:()I
istore 8 /* bottom */
start local 8 // int bottom
12: .line 2301
aload 5 /* view */
invokevirtual android.view.View.getHeight:()I
istore 7 /* height */
13: .line 2302
iload 7 /* height */
ifle 15
14: .line 2303
iload 4 /* extent */
iload 8 /* bottom */
aload 0 /* this */
invokevirtual android.widget.GridView.getHeight:()I
isub
bipush 100
imul
iload 7 /* height */
idiv
isub
istore 4 /* extent */
15: .line 2306
StackMap locals: int
StackMap stack:
iload 4 /* extent */
ireturn
end local 8 // int bottom
end local 7 // int height
end local 6 // int top
end local 5 // android.view.View view
end local 4 // int extent
end local 3 // int rowCount
end local 2 // int numColumns
16: .line 2308
StackMap locals: android.widget.GridView int
StackMap stack:
iconst_0
ireturn
end local 1 // int count
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Landroid/widget/GridView;
1 17 1 count I
3 16 2 numColumns I
4 16 3 rowCount I
5 16 4 extent I
6 16 5 view Landroid/view/View;
7 16 6 top I
8 16 7 height I
12 16 8 bottom I
protected int computeVerticalScrollOffset();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=8, args_size=1
start local 0 // android.widget.GridView this
0: .line 2313
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iflt 17
aload 0 /* this */
invokevirtual android.widget.GridView.getChildCount:()I
ifle 17
1: .line 2314
aload 0 /* this */
iconst_0
invokevirtual android.widget.GridView.getChildAt:(I)Landroid/view/View;
astore 1 /* view */
start local 1 // android.view.View view
2: .line 2315
aload 1 /* view */
invokevirtual android.view.View.getTop:()I
istore 2 /* top */
start local 2 // int top
3: .line 2316
aload 1 /* view */
invokevirtual android.view.View.getHeight:()I
istore 3 /* height */
start local 3 // int height
4: .line 2317
iload 3 /* height */
ifle 17
5: .line 2318
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 4 /* numColumns */
start local 4 // int numColumns
6: .line 2319
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iload 4 /* numColumns */
iadd
iconst_1
isub
iload 4 /* numColumns */
idiv
istore 5 /* rowCount */
start local 5 // int rowCount
7: .line 2323
aload 0 /* this */
invokevirtual android.widget.GridView.isStackFromBottom:()Z
ifeq 9
iload 5 /* rowCount */
iload 4 /* numColumns */
imul
8: .line 2324
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
isub
goto 10
StackMap locals: android.widget.GridView android.view.View int int int int
StackMap stack:
9: iconst_0
10: .line 2323
StackMap locals:
StackMap stack: int
istore 6 /* oddItemsOnFirstRow */
start local 6 // int oddItemsOnFirstRow
11: .line 2325
aload 0 /* this */
getfield android.widget.GridView.mFirstPosition:I
iload 6 /* oddItemsOnFirstRow */
iadd
iload 4 /* numColumns */
idiv
istore 7 /* whichRow */
start local 7 // int whichRow
12: .line 2326
iload 7 /* whichRow */
bipush 100
imul
iload 2 /* top */
bipush 100
imul
iload 3 /* height */
idiv
isub
13: .line 2327
aload 0 /* this */
getfield android.widget.GridView.mScrollY:I
i2f
aload 0 /* this */
invokevirtual android.widget.GridView.getHeight:()I
i2f
fdiv
iload 5 /* rowCount */
i2f
fmul
ldc 100.0
fmul
f2i
14: .line 2326
iadd
15: .line 2327
iconst_0
16: .line 2326
invokestatic java.lang.Math.max:(II)I
ireturn
end local 7 // int whichRow
end local 6 // int oddItemsOnFirstRow
end local 5 // int rowCount
end local 4 // int numColumns
end local 3 // int height
end local 2 // int top
end local 1 // android.view.View view
17: .line 2330
StackMap locals: android.widget.GridView
StackMap stack:
iconst_0
ireturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Landroid/widget/GridView;
2 17 1 view Landroid/view/View;
3 17 2 top I
4 17 3 height I
6 17 4 numColumns I
7 17 5 rowCount I
11 17 6 oddItemsOnFirstRow I
12 17 7 whichRow I
protected int computeVerticalScrollRange();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=1
start local 0 // android.widget.GridView this
0: .line 2336
aload 0 /* this */
getfield android.widget.GridView.mNumColumns:I
istore 1 /* numColumns */
start local 1 // int numColumns
1: .line 2337
aload 0 /* this */
getfield android.widget.GridView.mItemCount:I
iload 1 /* numColumns */
iadd
iconst_1
isub
iload 1 /* numColumns */
idiv
istore 2 /* rowCount */
start local 2 // int rowCount
2: .line 2338
iload 2 /* rowCount */
bipush 100
imul
iconst_0
invokestatic java.lang.Math.max:(II)I
istore 3 /* result */
start local 3 // int result
3: .line 2339
aload 0 /* this */
getfield android.widget.GridView.mScrollY:I
ifeq 5
4: .line 2341
iload 3 /* result */
aload 0 /* this */
getfield android.widget.GridView.mScrollY:I
i2f
aload 0 /* this */
invokevirtual android.widget.GridView.getHeight:()I
i2f
fdiv
iload 2 /* rowCount */
i2f
fmul
ldc 100.0
fmul
f2i
invokestatic java.lang.Math.abs:(I)I
iadd
istore 3 /* result */
5: .line 2343
StackMap locals: int int int
StackMap stack:
iload 3 /* result */
ireturn
end local 3 // int result
end local 2 // int rowCount
end local 1 // int numColumns
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/GridView;
1 6 1 numColumns I
2 6 2 rowCount I
3 6 3 result I
public java.lang.CharSequence getAccessibilityClassName();
descriptor: ()Ljava/lang/CharSequence;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // android.widget.GridView this
0: .line 2348
ldc Landroid/widget/GridView;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
areturn
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
public void onInitializeAccessibilityNodeInfoInternal(android.view.accessibility.AccessibilityNodeInfo);
descriptor: (Landroid/view/accessibility/AccessibilityNodeInfo;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 // android.widget.GridView this
start local 1 // android.view.accessibility.AccessibilityNodeInfo info
0: .line 2354
aload 0 /* this */
aload 1 /* info */
invokespecial android.widget.AbsListView.onInitializeAccessibilityNodeInfoInternal:(Landroid/view/accessibility/AccessibilityNodeInfo;)V
1: .line 2356
aload 0 /* this */
invokevirtual android.widget.GridView.getNumColumns:()I
istore 2 /* columnsCount */
start local 2 // int columnsCount
2: .line 2357
aload 0 /* this */
invokevirtual android.widget.GridView.getCount:()I
iload 2 /* columnsCount */
idiv
istore 3 /* rowsCount */
start local 3 // int rowsCount
3: .line 2358
aload 0 /* this */
invokevirtual android.widget.GridView.getSelectionModeForAccessibility:()I
istore 4 /* selectionMode */
start local 4 // int selectionMode
4: .line 2360
iload 3 /* rowsCount */
iload 2 /* columnsCount */
iconst_0
iload 4 /* selectionMode */
5: .line 2359
invokestatic android.view.accessibility.AccessibilityNodeInfo$CollectionInfo.obtain:(IIZI)Landroid/view/accessibility/AccessibilityNodeInfo$CollectionInfo;
astore 5 /* collectionInfo */
start local 5 // android.view.accessibility.AccessibilityNodeInfo$CollectionInfo collectionInfo
6: .line 2361
aload 1 /* info */
aload 5 /* collectionInfo */
invokevirtual android.view.accessibility.AccessibilityNodeInfo.setCollectionInfo:(Landroid/view/accessibility/AccessibilityNodeInfo$CollectionInfo;)V
7: .line 2363
iload 2 /* columnsCount */
ifgt 8
iload 3 /* rowsCount */
ifle 9
8: .line 2364
StackMap locals: android.widget.GridView android.view.accessibility.AccessibilityNodeInfo int int int android.view.accessibility.AccessibilityNodeInfo$CollectionInfo
StackMap stack:
aload 1 /* info */
getstatic android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction.ACTION_SCROLL_TO_POSITION:Landroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;
invokevirtual android.view.accessibility.AccessibilityNodeInfo.addAction:(Landroid/view/accessibility/AccessibilityNodeInfo$AccessibilityAction;)V
9: .line 2366
StackMap locals:
StackMap stack:
return
end local 5 // android.view.accessibility.AccessibilityNodeInfo$CollectionInfo collectionInfo
end local 4 // int selectionMode
end local 3 // int rowsCount
end local 2 // int columnsCount
end local 1 // android.view.accessibility.AccessibilityNodeInfo info
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Landroid/widget/GridView;
0 10 1 info Landroid/view/accessibility/AccessibilityNodeInfo;
2 10 2 columnsCount I
3 10 3 rowsCount I
4 10 4 selectionMode I
6 10 5 collectionInfo Landroid/view/accessibility/AccessibilityNodeInfo$CollectionInfo;
MethodParameters:
Name Flags
info
public boolean performAccessibilityActionInternal(int, android.os.Bundle);
descriptor: (ILandroid/os/Bundle;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 // android.widget.GridView this
0: .line 2376
new java.lang.Error
dup
ldc "Unresolved compilation problem: \n\tR cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/GridView;
MethodParameters:
Name Flags
action
arguments
public void onInitializeAccessibilityNodeInfoForItem(android.view.View, int, android.view.accessibility.AccessibilityNodeInfo);
descriptor: (Landroid/view/View;ILandroid/view/accessibility/AccessibilityNodeInfo;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=13, args_size=4
start local 0 // android.widget.GridView this
start local 1 // android.view.View view
start local 2 // int position
start local 3 // android.view.accessibility.AccessibilityNodeInfo info
0: .line 2397
aload 0 /* this */
aload 1 /* view */
iload 2 /* position */
aload 3 /* info */
invokespecial android.widget.AbsListView.onInitializeAccessibilityNodeInfoForItem:(Landroid/view/View;ILandroid/view/accessibility/AccessibilityNodeInfo;)V
1: .line 2399
aload 0 /* this */
invokevirtual android.widget.GridView.getCount:()I
istore 4 /* count */
start local 4 // int count
2: .line 2400
aload 0 /* this */
invokevirtual android.widget.GridView.getNumColumns:()I
istore 5 /* columnsCount */
start local 5 // int columnsCount
3: .line 2401
iload 4 /* count */
iload 5 /* columnsCount */
idiv
istore 6 /* rowsCount */
start local 6 // int rowsCount
4: .line 2405
aload 0 /* this */
getfield android.widget.GridView.mStackFromBottom:Z
ifne 8
5: .line 2406
iload 2 /* position */
iload 5 /* columnsCount */
irem
istore 8 /* column */
start local 8 // int column
6: .line 2407
iload 2 /* position */
iload 5 /* columnsCount */
idiv
istore 7 /* row */
start local 7 // int row
7: .line 2408
goto 11
end local 8 // int column
end local 7 // int row
8: .line 2409
StackMap locals: int int int
StackMap stack:
iload 4 /* count */
iconst_1
isub
iload 2 /* position */
isub
istore 9 /* invertedIndex */
start local 9 // int invertedIndex
9: .line 2411
iload 5 /* columnsCount */
iconst_1
isub
iload 9 /* invertedIndex */
iload 5 /* columnsCount */
irem
isub
istore 8 /* column */
start local 8 // int column
10: .line 2412
iload 6 /* rowsCount */
iconst_1
isub
iload 9 /* invertedIndex */
iload 5 /* columnsCount */
idiv
isub
istore 7 /* row */
end local 9 // int invertedIndex
start local 7 // int row
11: .line 2415
StackMap locals: int int
StackMap stack:
aload 1 /* view */
invokevirtual android.view.View.getLayoutParams:()Landroid/view/ViewGroup$LayoutParams;
checkcast android.widget.AbsListView$LayoutParams
astore 9 /* lp */
start local 9 // android.widget.AbsListView$LayoutParams lp
12: .line 2416
aload 9 /* lp */
ifnull 13
aload 9 /* lp */
getfield android.widget.AbsListView$LayoutParams.viewType:I
bipush -2
if_icmpne 13
iconst_1
goto 14
StackMap locals: android.widget.AbsListView$LayoutParams
StackMap stack:
13: iconst_0
StackMap locals:
StackMap stack: int
14: istore 10 /* isHeading */
start local 10 // boolean isHeading
15: .line 2417
aload 0 /* this */
iload 2 /* position */
invokevirtual android.widget.GridView.isItemChecked:(I)Z
istore 11 /* isSelected */
start local 11 // boolean isSelected
16: .line 2419
iload 7 /* row */
iconst_1
iload 8 /* column */
iconst_1
iload 10 /* isHeading */
iload 11 /* isSelected */
17: .line 2418
invokestatic android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo.obtain:(IIIIZZ)Landroid/view/accessibility/AccessibilityNodeInfo$CollectionItemInfo;
astore 12 /* itemInfo */
start local 12 // android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo itemInfo
18: .line 2420
aload 3 /* info */
aload 12 /* itemInfo */
invokevirtual android.view.accessibility.AccessibilityNodeInfo.setCollectionItemInfo:(Landroid/view/accessibility/AccessibilityNodeInfo$CollectionItemInfo;)V
19: .line 2421
return
end local 12 // android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo itemInfo
end local 11 // boolean isSelected
end local 10 // boolean isHeading
end local 9 // android.widget.AbsListView$LayoutParams lp
end local 8 // int column
end local 7 // int row
end local 6 // int rowsCount
end local 5 // int columnsCount
end local 4 // int count
end local 3 // android.view.accessibility.AccessibilityNodeInfo info
end local 2 // int position
end local 1 // android.view.View view
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Landroid/widget/GridView;
0 20 1 view Landroid/view/View;
0 20 2 position I
0 20 3 info Landroid/view/accessibility/AccessibilityNodeInfo;
2 20 4 count I
3 20 5 columnsCount I
4 20 6 rowsCount I
7 8 7 row I
11 20 7 row I
6 8 8 column I
10 20 8 column I
9 11 9 invertedIndex I
12 20 9 lp Landroid/widget/AbsListView$LayoutParams;
15 20 10 isHeading Z
16 20 11 isSelected Z
18 20 12 itemInfo Landroid/view/accessibility/AccessibilityNodeInfo$CollectionItemInfo;
MethodParameters:
Name Flags
view
position
info
protected void encodeProperties(android.view.ViewHierarchyEncoder);
descriptor: (Landroid/view/ViewHierarchyEncoder;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 // android.widget.GridView this
start local 1 // android.view.ViewHierarchyEncoder encoder
0: .line 2426
aload 0 /* this */
aload 1 /* encoder */
invokespecial android.widget.AbsListView.encodeProperties:(Landroid/view/ViewHierarchyEncoder;)V
1: .line 2427
aload 1 /* encoder */
ldc "numColumns"
aload 0 /* this */
invokevirtual android.widget.GridView.getNumColumns:()I
invokevirtual android.view.ViewHierarchyEncoder.addProperty:(Ljava/lang/String;I)V
2: .line 2428
return
end local 1 // android.view.ViewHierarchyEncoder encoder
end local 0 // android.widget.GridView this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/GridView;
0 3 1 encoder Landroid/view/ViewHierarchyEncoder;
MethodParameters:
Name Flags
encoder
public android.widget.Adapter getAdapter();
descriptor: ()Landroid/widget/Adapter;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: .line 1
aload 0
invokevirtual android.widget.GridView.getAdapter:()Landroid/widget/ListAdapter;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "GridView.java"
NestMembers:
android.widget.GridView$StretchMode
InnerClasses:
public MeasureSpec = android.view.View$MeasureSpec of android.view.View
public abstract ExportedProperty = android.view.ViewDebug$ExportedProperty of android.view.ViewDebug
public LayoutParams = android.view.ViewGroup$LayoutParams of android.view.ViewGroup
public final AccessibilityAction = android.view.accessibility.AccessibilityNodeInfo$AccessibilityAction of android.view.accessibility.AccessibilityNodeInfo
public final CollectionInfo = android.view.accessibility.AccessibilityNodeInfo$CollectionInfo of android.view.accessibility.AccessibilityNodeInfo
public final CollectionItemInfo = android.view.accessibility.AccessibilityNodeInfo$CollectionItemInfo of android.view.accessibility.AccessibilityNodeInfo
public AnimationParameters = android.view.animation.GridLayoutAnimationController$AnimationParameters of android.view.animation.GridLayoutAnimationController
abstract AbsPositionScroller = android.widget.AbsListView$AbsPositionScroller of android.widget.AbsListView
AdapterDataSetObserver = android.widget.AbsListView$AdapterDataSetObserver of android.widget.AbsListView
public LayoutParams = android.widget.AbsListView$LayoutParams of android.widget.AbsListView
RecycleBin = android.widget.AbsListView$RecycleBin of android.widget.AbsListView
public abstract StretchMode = android.widget.GridView$StretchMode of android.widget.GridView
public abstract RemoteView = android.widget.RemoteViews$RemoteView of android.widget.RemoteViews
RuntimeVisibleAnnotations:
android.widget.RemoteViews$RemoteView()