1239 lines
26 KiB
Smali
1239 lines
26 KiB
Smali
.class public Lcom/moji/user/homepage/view/FlowLayout;
|
|
.super Landroid/view/ViewGroup;
|
|
.source "FlowLayout.java"
|
|
|
|
|
|
# annotations
|
|
.annotation build Landroid/annotation/TargetApi;
|
|
value = 0xe
|
|
.end annotation
|
|
|
|
.annotation system Ldalvik/annotation/MemberClasses;
|
|
value = {
|
|
Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
}
|
|
.end annotation
|
|
|
|
|
|
# instance fields
|
|
.field a:Ljava/util/List;
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"Ljava/util/List<",
|
|
"Landroid/view/View;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
.end field
|
|
|
|
.field private b:I
|
|
|
|
.field private final c:Ljava/util/List;
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"Ljava/util/List<",
|
|
"Ljava/util/List<",
|
|
"Landroid/view/View;",
|
|
">;>;"
|
|
}
|
|
.end annotation
|
|
.end field
|
|
|
|
.field private final d:Ljava/util/List;
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"Ljava/util/List<",
|
|
"Ljava/lang/Integer;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
.end field
|
|
|
|
.field private final e:Ljava/util/List;
|
|
.annotation system Ldalvik/annotation/Signature;
|
|
value = {
|
|
"Ljava/util/List<",
|
|
"Ljava/lang/Integer;",
|
|
">;"
|
|
}
|
|
.end annotation
|
|
.end field
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>(Landroid/content/Context;)V
|
|
.locals 1
|
|
|
|
const/4 v0, 0x0
|
|
|
|
.line 51
|
|
invoke-direct {p0, p1, v0}, Lcom/moji/user/homepage/view/FlowLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
|
|
.locals 1
|
|
|
|
const/4 v0, 0x0
|
|
|
|
.line 55
|
|
invoke-direct {p0, p1, p2, v0}, Lcom/moji/user/homepage/view/FlowLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
|
|
.locals 2
|
|
|
|
.line 59
|
|
invoke-direct {p0, p1, p2, p3}, Landroid/view/ViewGroup;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
|
|
|
|
const v0, 0x800033
|
|
|
|
.line 44
|
|
iput v0, p0, Lcom/moji/user/homepage/view/FlowLayout;->b:I
|
|
|
|
.line 46
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/moji/user/homepage/view/FlowLayout;->c:Ljava/util/List;
|
|
|
|
.line 47
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/moji/user/homepage/view/FlowLayout;->d:Ljava/util/List;
|
|
|
|
.line 48
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/moji/user/homepage/view/FlowLayout;->e:Ljava/util/List;
|
|
|
|
.line 165
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v0, p0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
.line 61
|
|
sget-object v0, Lcom/moji/user/R$styleable;->FlowLayout_Layout:[I
|
|
|
|
const/4 v1, 0x0
|
|
|
|
invoke-virtual {p1, p2, v0, p3, v1}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[III)Landroid/content/res/TypedArray;
|
|
|
|
move-result-object p1
|
|
|
|
.line 64
|
|
:try_start_0
|
|
sget p2, Lcom/moji/user/R$styleable;->FlowLayout_Layout_android_layout_gravity:I
|
|
|
|
const/4 p3, -0x1
|
|
|
|
invoke-virtual {p1, p2, p3}, Landroid/content/res/TypedArray;->getInt(II)I
|
|
|
|
move-result p2
|
|
|
|
if-lez p2, :cond_0
|
|
|
|
.line 66
|
|
invoke-virtual {p0, p2}, Lcom/moji/user/homepage/view/FlowLayout;->setGravity(I)V
|
|
:try_end_0
|
|
.catchall {:try_start_0 .. :try_end_0} :catchall_0
|
|
|
|
.line 69
|
|
:cond_0
|
|
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
|
|
|
|
return-void
|
|
|
|
:catchall_0
|
|
move-exception p2
|
|
|
|
invoke-virtual {p1}, Landroid/content/res/TypedArray;->recycle()V
|
|
|
|
.line 70
|
|
throw p2
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method protected a()Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
.locals 2
|
|
|
|
.line 339
|
|
new-instance v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
const/4 v1, -0x1
|
|
|
|
invoke-direct {v0, v1, v1}, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;-><init>(II)V
|
|
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public a(Landroid/util/AttributeSet;)Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
.locals 2
|
|
|
|
.line 331
|
|
new-instance v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
invoke-virtual {p0}, Lcom/moji/user/homepage/view/FlowLayout;->getContext()Landroid/content/Context;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-direct {v0, v1, p1}, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
|
|
|
|
return-object v0
|
|
.end method
|
|
|
|
.method protected a(Landroid/view/ViewGroup$LayoutParams;)Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
.locals 1
|
|
|
|
.line 323
|
|
new-instance v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
invoke-direct {v0, p1}, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;-><init>(Landroid/view/ViewGroup$LayoutParams;)V
|
|
|
|
return-object v0
|
|
.end method
|
|
|
|
.method protected synthetic generateDefaultLayoutParams()Landroid/view/ViewGroup$LayoutParams;
|
|
.locals 1
|
|
|
|
.line 41
|
|
invoke-virtual {p0}, Lcom/moji/user/homepage/view/FlowLayout;->a()Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
move-result-object v0
|
|
|
|
return-object v0
|
|
.end method
|
|
|
|
.method public synthetic generateLayoutParams(Landroid/util/AttributeSet;)Landroid/view/ViewGroup$LayoutParams;
|
|
.locals 0
|
|
|
|
.line 41
|
|
invoke-virtual {p0, p1}, Lcom/moji/user/homepage/view/FlowLayout;->a(Landroid/util/AttributeSet;)Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
move-result-object p1
|
|
|
|
return-object p1
|
|
.end method
|
|
|
|
.method protected synthetic generateLayoutParams(Landroid/view/ViewGroup$LayoutParams;)Landroid/view/ViewGroup$LayoutParams;
|
|
.locals 0
|
|
|
|
.line 41
|
|
invoke-virtual {p0, p1}, Lcom/moji/user/homepage/view/FlowLayout;->a(Landroid/view/ViewGroup$LayoutParams;)Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
move-result-object p1
|
|
|
|
return-object p1
|
|
.end method
|
|
|
|
.method public getGravity()I
|
|
.locals 1
|
|
|
|
.line 359
|
|
iget v0, p0, Lcom/moji/user/homepage/view/FlowLayout;->b:I
|
|
|
|
return v0
|
|
.end method
|
|
|
|
.method protected onLayout(ZIIII)V
|
|
.locals 19
|
|
|
|
move-object/from16 v0, p0
|
|
|
|
.line 172
|
|
iget-object v1, v0, Lcom/moji/user/homepage/view/FlowLayout;->c:Ljava/util/List;
|
|
|
|
invoke-interface {v1}, Ljava/util/List;->clear()V
|
|
|
|
.line 173
|
|
iget-object v1, v0, Lcom/moji/user/homepage/view/FlowLayout;->d:Ljava/util/List;
|
|
|
|
invoke-interface {v1}, Ljava/util/List;->clear()V
|
|
|
|
.line 174
|
|
iget-object v1, v0, Lcom/moji/user/homepage/view/FlowLayout;->e:Ljava/util/List;
|
|
|
|
invoke-interface {v1}, Ljava/util/List;->clear()V
|
|
|
|
.line 176
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getWidth()I
|
|
|
|
move-result v1
|
|
|
|
.line 177
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getHeight()I
|
|
|
|
move-result v2
|
|
|
|
.line 179
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingTop()I
|
|
|
|
move-result v3
|
|
|
|
.line 183
|
|
iget-object v4, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
if-nez v4, :cond_0
|
|
|
|
.line 184
|
|
new-instance v4, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v4}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v4, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
goto :goto_0
|
|
|
|
.line 186
|
|
:cond_0
|
|
iget-object v4, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
invoke-interface {v4}, Ljava/util/List;->clear()V
|
|
|
|
.line 190
|
|
:goto_0
|
|
iget v4, v0, Lcom/moji/user/homepage/view/FlowLayout;->b:I
|
|
|
|
and-int/lit8 v4, v4, 0x7
|
|
|
|
const/4 v5, 0x1
|
|
|
|
if-eq v4, v5, :cond_2
|
|
|
|
const/4 v5, 0x5
|
|
|
|
if-eq v4, v5, :cond_1
|
|
|
|
const/4 v4, 0x0
|
|
|
|
goto :goto_1
|
|
|
|
:cond_1
|
|
const/high16 v4, 0x3f800000 # 1.0f
|
|
|
|
goto :goto_1
|
|
|
|
:cond_2
|
|
const/high16 v4, 0x3f000000 # 0.5f
|
|
|
|
:goto_1
|
|
move v8, v3
|
|
|
|
const/4 v3, 0x0
|
|
|
|
const/4 v6, 0x0
|
|
|
|
const/4 v7, 0x0
|
|
|
|
.line 203
|
|
:goto_2
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getChildCount()I
|
|
|
|
move-result v9
|
|
|
|
const/16 v10, 0x8
|
|
|
|
if-ge v3, v9, :cond_5
|
|
|
|
.line 205
|
|
invoke-virtual {v0, v3}, Lcom/moji/user/homepage/view/FlowLayout;->getChildAt(I)Landroid/view/View;
|
|
|
|
move-result-object v9
|
|
|
|
.line 207
|
|
invoke-virtual {v9}, Landroid/view/View;->getVisibility()I
|
|
|
|
move-result v11
|
|
|
|
if-ne v11, v10, :cond_3
|
|
|
|
goto :goto_3
|
|
|
|
.line 211
|
|
:cond_3
|
|
invoke-virtual {v9}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
|
|
|
|
move-result-object v10
|
|
|
|
check-cast v10, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
.line 213
|
|
invoke-virtual {v9}, Landroid/view/View;->getMeasuredWidth()I
|
|
|
|
move-result v11
|
|
|
|
iget v12, v10, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->leftMargin:I
|
|
|
|
add-int/2addr v11, v12
|
|
|
|
iget v12, v10, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->rightMargin:I
|
|
|
|
add-int/2addr v11, v12
|
|
|
|
.line 214
|
|
invoke-virtual {v9}, Landroid/view/View;->getMeasuredHeight()I
|
|
|
|
move-result v12
|
|
|
|
iget v13, v10, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->bottomMargin:I
|
|
|
|
add-int/2addr v12, v13
|
|
|
|
iget v10, v10, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
add-int/2addr v12, v10
|
|
|
|
add-int v10, v7, v11
|
|
|
|
if-le v10, v1, :cond_4
|
|
|
|
.line 217
|
|
iget-object v10, v0, Lcom/moji/user/homepage/view/FlowLayout;->d:Ljava/util/List;
|
|
|
|
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
|
|
|
|
move-result-object v13
|
|
|
|
invoke-interface {v10, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
.line 218
|
|
iget-object v10, v0, Lcom/moji/user/homepage/view/FlowLayout;->c:Ljava/util/List;
|
|
|
|
iget-object v13, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
invoke-interface {v10, v13}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
.line 219
|
|
iget-object v10, v0, Lcom/moji/user/homepage/view/FlowLayout;->e:Ljava/util/List;
|
|
|
|
sub-int v7, v1, v7
|
|
|
|
int-to-float v7, v7
|
|
|
|
mul-float v7, v7, v4
|
|
|
|
float-to-int v7, v7
|
|
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingLeft()I
|
|
|
|
move-result v13
|
|
|
|
add-int/2addr v7, v13
|
|
|
|
invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
|
|
|
|
move-result-object v7
|
|
|
|
invoke-interface {v10, v7}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
add-int/2addr v8, v6
|
|
|
|
.line 225
|
|
new-instance v6, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v6}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v6, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
const/4 v6, 0x0
|
|
|
|
const/4 v7, 0x0
|
|
|
|
:cond_4
|
|
add-int/2addr v7, v11
|
|
|
|
.line 229
|
|
invoke-static {v6, v12}, Ljava/lang/Math;->max(II)I
|
|
|
|
move-result v6
|
|
|
|
.line 230
|
|
iget-object v10, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
invoke-interface {v10, v9}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
:goto_3
|
|
add-int/lit8 v3, v3, 0x1
|
|
|
|
goto :goto_2
|
|
|
|
.line 233
|
|
:cond_5
|
|
iget-object v3, v0, Lcom/moji/user/homepage/view/FlowLayout;->d:Ljava/util/List;
|
|
|
|
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
|
|
|
|
move-result-object v9
|
|
|
|
invoke-interface {v3, v9}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
.line 234
|
|
iget-object v3, v0, Lcom/moji/user/homepage/view/FlowLayout;->c:Ljava/util/List;
|
|
|
|
iget-object v9, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
invoke-interface {v3, v9}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
.line 235
|
|
iget-object v3, v0, Lcom/moji/user/homepage/view/FlowLayout;->e:Ljava/util/List;
|
|
|
|
sub-int/2addr v1, v7
|
|
|
|
int-to-float v1, v1
|
|
|
|
mul-float v1, v1, v4
|
|
|
|
float-to-int v1, v1
|
|
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingLeft()I
|
|
|
|
move-result v4
|
|
|
|
add-int/2addr v1, v4
|
|
|
|
invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-interface {v3, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
|
|
|
|
add-int/2addr v8, v6
|
|
|
|
.line 240
|
|
iget v1, v0, Lcom/moji/user/homepage/view/FlowLayout;->b:I
|
|
|
|
and-int/lit8 v1, v1, 0x70
|
|
|
|
const/16 v3, 0x10
|
|
|
|
const/16 v4, 0x50
|
|
|
|
if-eq v1, v3, :cond_7
|
|
|
|
if-eq v1, v4, :cond_6
|
|
|
|
const/4 v1, 0x0
|
|
|
|
goto :goto_4
|
|
|
|
:cond_6
|
|
sub-int v1, v2, v8
|
|
|
|
goto :goto_4
|
|
|
|
:cond_7
|
|
sub-int/2addr v2, v8
|
|
|
|
.line 245
|
|
div-int/lit8 v1, v2, 0x2
|
|
|
|
.line 252
|
|
:goto_4
|
|
iget-object v2, v0, Lcom/moji/user/homepage/view/FlowLayout;->c:Ljava/util/List;
|
|
|
|
invoke-interface {v2}, Ljava/util/List;->size()I
|
|
|
|
move-result v2
|
|
|
|
.line 255
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingTop()I
|
|
|
|
move-result v3
|
|
|
|
move v6, v3
|
|
|
|
const/4 v3, 0x0
|
|
|
|
:goto_5
|
|
if-ge v3, v2, :cond_f
|
|
|
|
.line 259
|
|
iget-object v8, v0, Lcom/moji/user/homepage/view/FlowLayout;->d:Ljava/util/List;
|
|
|
|
invoke-interface {v8, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
|
|
|
move-result-object v8
|
|
|
|
check-cast v8, Ljava/lang/Integer;
|
|
|
|
invoke-virtual {v8}, Ljava/lang/Integer;->intValue()I
|
|
|
|
move-result v8
|
|
|
|
.line 260
|
|
iget-object v9, v0, Lcom/moji/user/homepage/view/FlowLayout;->c:Ljava/util/List;
|
|
|
|
invoke-interface {v9, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
|
|
|
move-result-object v9
|
|
|
|
check-cast v9, Ljava/util/List;
|
|
|
|
iput-object v9, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
.line 261
|
|
iget-object v9, v0, Lcom/moji/user/homepage/view/FlowLayout;->e:Ljava/util/List;
|
|
|
|
invoke-interface {v9, v3}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
|
|
|
move-result-object v9
|
|
|
|
check-cast v9, Ljava/lang/Integer;
|
|
|
|
invoke-virtual {v9}, Ljava/lang/Integer;->intValue()I
|
|
|
|
move-result v9
|
|
|
|
.line 263
|
|
iget-object v11, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
invoke-interface {v11}, Ljava/util/List;->size()I
|
|
|
|
move-result v11
|
|
|
|
move v12, v9
|
|
|
|
const/4 v9, 0x0
|
|
|
|
:goto_6
|
|
if-ge v9, v11, :cond_e
|
|
|
|
.line 267
|
|
iget-object v13, v0, Lcom/moji/user/homepage/view/FlowLayout;->a:Ljava/util/List;
|
|
|
|
invoke-interface {v13, v9}, Ljava/util/List;->get(I)Ljava/lang/Object;
|
|
|
|
move-result-object v13
|
|
|
|
check-cast v13, Landroid/view/View;
|
|
|
|
.line 269
|
|
invoke-virtual {v13}, Landroid/view/View;->getVisibility()I
|
|
|
|
move-result v14
|
|
|
|
if-ne v14, v10, :cond_8
|
|
|
|
move/from16 v17, v2
|
|
|
|
move/from16 v18, v7
|
|
|
|
goto/16 :goto_b
|
|
|
|
.line 273
|
|
:cond_8
|
|
invoke-virtual {v13}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
|
|
|
|
move-result-object v14
|
|
|
|
check-cast v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
.line 276
|
|
iget v15, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->height:I
|
|
|
|
const/4 v5, -0x1
|
|
|
|
if-ne v15, v5, :cond_b
|
|
|
|
.line 280
|
|
iget v10, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->width:I
|
|
|
|
const/high16 v15, 0x40000000 # 2.0f
|
|
|
|
if-ne v10, v5, :cond_9
|
|
|
|
move v5, v7
|
|
|
|
:goto_7
|
|
const/high16 v10, 0x40000000 # 2.0f
|
|
|
|
goto :goto_8
|
|
|
|
.line 282
|
|
:cond_9
|
|
iget v5, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->width:I
|
|
|
|
if-ltz v5, :cond_a
|
|
|
|
.line 284
|
|
iget v5, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->width:I
|
|
|
|
goto :goto_7
|
|
|
|
:cond_a
|
|
move v5, v7
|
|
|
|
const/high16 v10, -0x80000000
|
|
|
|
.line 287
|
|
:goto_8
|
|
invoke-static {v5, v10}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
|
|
|
|
move-result v5
|
|
|
|
iget v10, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
sub-int v10, v8, v10
|
|
|
|
iget v4, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->bottomMargin:I
|
|
|
|
sub-int/2addr v10, v4
|
|
|
|
invoke-static {v10, v15}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
|
|
|
|
move-result v4
|
|
|
|
invoke-virtual {v13, v5, v4}, Landroid/view/View;->measure(II)V
|
|
|
|
.line 290
|
|
:cond_b
|
|
invoke-virtual {v13}, Landroid/view/View;->getMeasuredWidth()I
|
|
|
|
move-result v4
|
|
|
|
.line 291
|
|
invoke-virtual {v13}, Landroid/view/View;->getMeasuredHeight()I
|
|
|
|
move-result v5
|
|
|
|
.line 295
|
|
iget v10, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->a:I
|
|
|
|
invoke-static {v10}, Landroid/view/Gravity;->isVertical(I)Z
|
|
|
|
move-result v10
|
|
|
|
if-eqz v10, :cond_d
|
|
|
|
.line 296
|
|
iget v10, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->a:I
|
|
|
|
const/16 v15, 0x50
|
|
|
|
if-eq v10, v15, :cond_c
|
|
|
|
packed-switch v10, :pswitch_data_0
|
|
|
|
goto :goto_9
|
|
|
|
:pswitch_0
|
|
sub-int v10, v8, v5
|
|
|
|
.line 302
|
|
iget v15, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
sub-int/2addr v10, v15
|
|
|
|
iget v15, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->bottomMargin:I
|
|
|
|
sub-int/2addr v10, v15
|
|
|
|
div-int/lit8 v10, v10, 0x2
|
|
|
|
goto :goto_a
|
|
|
|
:cond_c
|
|
sub-int v10, v8, v5
|
|
|
|
.line 305
|
|
iget v15, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
sub-int/2addr v10, v15
|
|
|
|
iget v15, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->bottomMargin:I
|
|
|
|
sub-int/2addr v10, v15
|
|
|
|
goto :goto_a
|
|
|
|
:cond_d
|
|
:goto_9
|
|
const/4 v10, 0x0
|
|
|
|
.line 310
|
|
:goto_a
|
|
iget v15, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->leftMargin:I
|
|
|
|
add-int/2addr v15, v12
|
|
|
|
iget v0, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
add-int/2addr v0, v6
|
|
|
|
add-int/2addr v0, v10
|
|
|
|
add-int/2addr v0, v1
|
|
|
|
add-int v16, v12, v4
|
|
|
|
move/from16 v17, v2
|
|
|
|
iget v2, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->leftMargin:I
|
|
|
|
add-int v2, v16, v2
|
|
|
|
add-int/2addr v5, v6
|
|
|
|
move/from16 v18, v7
|
|
|
|
iget v7, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
add-int/2addr v5, v7
|
|
|
|
add-int/2addr v5, v10
|
|
|
|
add-int/2addr v5, v1
|
|
|
|
invoke-virtual {v13, v15, v0, v2, v5}, Landroid/view/View;->layout(IIII)V
|
|
|
|
.line 312
|
|
iget v0, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->leftMargin:I
|
|
|
|
add-int/2addr v4, v0
|
|
|
|
iget v0, v14, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->rightMargin:I
|
|
|
|
add-int/2addr v4, v0
|
|
|
|
add-int/2addr v12, v4
|
|
|
|
:goto_b
|
|
add-int/lit8 v9, v9, 0x1
|
|
|
|
move/from16 v2, v17
|
|
|
|
move/from16 v7, v18
|
|
|
|
move-object/from16 v0, p0
|
|
|
|
const/16 v4, 0x50
|
|
|
|
const/16 v10, 0x8
|
|
|
|
goto/16 :goto_6
|
|
|
|
:cond_e
|
|
move/from16 v17, v2
|
|
|
|
move/from16 v18, v7
|
|
|
|
add-int/2addr v6, v8
|
|
|
|
add-int/lit8 v3, v3, 0x1
|
|
|
|
move-object/from16 v0, p0
|
|
|
|
const/16 v4, 0x50
|
|
|
|
const/16 v10, 0x8
|
|
|
|
goto/16 :goto_5
|
|
|
|
:cond_f
|
|
return-void
|
|
|
|
nop
|
|
|
|
:pswitch_data_0
|
|
.packed-switch 0x10
|
|
:pswitch_0
|
|
:pswitch_0
|
|
.end packed-switch
|
|
.end method
|
|
|
|
.method protected onMeasure(II)V
|
|
.locals 19
|
|
|
|
move-object/from16 v6, p0
|
|
|
|
.line 79
|
|
invoke-super/range {p0 .. p2}, Landroid/view/ViewGroup;->onMeasure(II)V
|
|
|
|
.line 81
|
|
invoke-static/range {p1 .. p1}, Landroid/view/View$MeasureSpec;->getSize(I)I
|
|
|
|
move-result v0
|
|
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingLeft()I
|
|
|
|
move-result v1
|
|
|
|
sub-int/2addr v0, v1
|
|
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingRight()I
|
|
|
|
move-result v1
|
|
|
|
sub-int v7, v0, v1
|
|
|
|
.line 82
|
|
invoke-static/range {p2 .. p2}, Landroid/view/View$MeasureSpec;->getSize(I)I
|
|
|
|
move-result v8
|
|
|
|
.line 84
|
|
invoke-static/range {p1 .. p1}, Landroid/view/View$MeasureSpec;->getMode(I)I
|
|
|
|
move-result v9
|
|
|
|
.line 85
|
|
invoke-static/range {p2 .. p2}, Landroid/view/View$MeasureSpec;->getMode(I)I
|
|
|
|
move-result v10
|
|
|
|
.line 88
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingTop()I
|
|
|
|
move-result v0
|
|
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingBottom()I
|
|
|
|
move-result v1
|
|
|
|
add-int/2addr v0, v1
|
|
|
|
.line 93
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getChildCount()I
|
|
|
|
move-result v11
|
|
|
|
move/from16 v16, v0
|
|
|
|
const/4 v5, 0x0
|
|
|
|
const/4 v13, 0x0
|
|
|
|
const/4 v14, 0x0
|
|
|
|
const/4 v15, 0x0
|
|
|
|
:goto_0
|
|
const/high16 v4, 0x40000000 # 2.0f
|
|
|
|
if-ge v13, v11, :cond_9
|
|
|
|
.line 97
|
|
invoke-virtual {v6, v13}, Lcom/moji/user/homepage/view/FlowLayout;->getChildAt(I)Landroid/view/View;
|
|
|
|
move-result-object v3
|
|
|
|
add-int/lit8 v0, v11, -0x1
|
|
|
|
if-ne v13, v0, :cond_0
|
|
|
|
const/4 v0, 0x1
|
|
|
|
const/16 v17, 0x1
|
|
|
|
goto :goto_1
|
|
|
|
:cond_0
|
|
const/16 v17, 0x0
|
|
|
|
.line 100
|
|
:goto_1
|
|
invoke-virtual {v3}, Landroid/view/View;->getVisibility()I
|
|
|
|
move-result v0
|
|
|
|
const/16 v1, 0x8
|
|
|
|
if-ne v0, v1, :cond_1
|
|
|
|
if-eqz v17, :cond_8
|
|
|
|
.line 103
|
|
invoke-static {v14, v15}, Ljava/lang/Math;->max(II)I
|
|
|
|
move-result v0
|
|
|
|
add-int v16, v16, v5
|
|
|
|
move v14, v0
|
|
|
|
goto/16 :goto_6
|
|
|
|
:cond_1
|
|
move-object/from16 v0, p0
|
|
|
|
move-object v1, v3
|
|
|
|
move/from16 v2, p1
|
|
|
|
move-object/from16 v18, v3
|
|
|
|
move v3, v15
|
|
|
|
const/high16 v12, 0x40000000 # 2.0f
|
|
|
|
move/from16 v4, p2
|
|
|
|
move v12, v5
|
|
|
|
move/from16 v5, v16
|
|
|
|
.line 110
|
|
invoke-virtual/range {v0 .. v5}, Lcom/moji/user/homepage/view/FlowLayout;->measureChildWithMargins(Landroid/view/View;IIII)V
|
|
|
|
.line 112
|
|
invoke-virtual/range {v18 .. v18}, Landroid/view/View;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
|
|
|
|
move-result-object v0
|
|
|
|
check-cast v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;
|
|
|
|
.line 120
|
|
iget v1, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->width:I
|
|
|
|
const/4 v2, -0x1
|
|
|
|
const/high16 v3, -0x80000000
|
|
|
|
if-ne v1, v2, :cond_2
|
|
|
|
.line 122
|
|
iget v1, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->leftMargin:I
|
|
|
|
iget v2, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->rightMargin:I
|
|
|
|
add-int/2addr v1, v2
|
|
|
|
sub-int v1, v7, v1
|
|
|
|
:goto_2
|
|
move v2, v1
|
|
|
|
const/high16 v1, 0x40000000 # 2.0f
|
|
|
|
goto :goto_3
|
|
|
|
.line 123
|
|
:cond_2
|
|
iget v1, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->width:I
|
|
|
|
if-ltz v1, :cond_3
|
|
|
|
.line 125
|
|
iget v1, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->width:I
|
|
|
|
goto :goto_2
|
|
|
|
:cond_3
|
|
move v2, v7
|
|
|
|
const/high16 v1, -0x80000000
|
|
|
|
.line 128
|
|
:goto_3
|
|
iget v4, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->height:I
|
|
|
|
if-ltz v4, :cond_4
|
|
|
|
.line 130
|
|
iget v3, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->height:I
|
|
|
|
const/high16 v4, 0x40000000 # 2.0f
|
|
|
|
goto :goto_4
|
|
|
|
:cond_4
|
|
if-nez v10, :cond_5
|
|
|
|
const/4 v3, 0x0
|
|
|
|
const/4 v4, 0x0
|
|
|
|
goto :goto_4
|
|
|
|
:cond_5
|
|
move v3, v8
|
|
|
|
const/high16 v4, -0x80000000
|
|
|
|
.line 136
|
|
:goto_4
|
|
invoke-static {v2, v1}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
|
|
|
|
move-result v1
|
|
|
|
invoke-static {v3, v4}, Landroid/view/View$MeasureSpec;->makeMeasureSpec(II)I
|
|
|
|
move-result v2
|
|
|
|
move-object/from16 v3, v18
|
|
|
|
invoke-virtual {v3, v1, v2}, Landroid/view/View;->measure(II)V
|
|
|
|
.line 138
|
|
invoke-virtual {v3}, Landroid/view/View;->getMeasuredWidth()I
|
|
|
|
move-result v1
|
|
|
|
iget v2, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->leftMargin:I
|
|
|
|
add-int/2addr v1, v2
|
|
|
|
iget v2, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->rightMargin:I
|
|
|
|
add-int/2addr v1, v2
|
|
|
|
add-int v2, v15, v1
|
|
|
|
if-le v2, v7, :cond_6
|
|
|
|
.line 142
|
|
invoke-static {v14, v15}, Ljava/lang/Math;->max(II)I
|
|
|
|
move-result v14
|
|
|
|
add-int v16, v16, v12
|
|
|
|
.line 146
|
|
invoke-virtual {v3}, Landroid/view/View;->getMeasuredHeight()I
|
|
|
|
move-result v2
|
|
|
|
iget v3, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
add-int/2addr v2, v3
|
|
|
|
iget v0, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->bottomMargin:I
|
|
|
|
add-int/2addr v2, v0
|
|
|
|
move v15, v1
|
|
|
|
move v0, v2
|
|
|
|
goto :goto_5
|
|
|
|
.line 150
|
|
:cond_6
|
|
invoke-virtual {v3}, Landroid/view/View;->getMeasuredHeight()I
|
|
|
|
move-result v1
|
|
|
|
iget v3, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->topMargin:I
|
|
|
|
add-int/2addr v1, v3
|
|
|
|
iget v0, v0, Lcom/moji/user/homepage/view/FlowLayout$LayoutParams;->bottomMargin:I
|
|
|
|
add-int/2addr v1, v0
|
|
|
|
invoke-static {v12, v1}, Ljava/lang/Math;->max(II)I
|
|
|
|
move-result v0
|
|
|
|
move v15, v2
|
|
|
|
:goto_5
|
|
if-eqz v17, :cond_7
|
|
|
|
.line 154
|
|
invoke-static {v14, v15}, Ljava/lang/Math;->max(II)I
|
|
|
|
move-result v1
|
|
|
|
add-int v16, v16, v0
|
|
|
|
move v5, v0
|
|
|
|
move v14, v1
|
|
|
|
goto :goto_6
|
|
|
|
:cond_7
|
|
move v5, v0
|
|
|
|
:cond_8
|
|
:goto_6
|
|
add-int/lit8 v13, v13, 0x1
|
|
|
|
goto/16 :goto_0
|
|
|
|
.line 160
|
|
:cond_9
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingLeft()I
|
|
|
|
move-result v0
|
|
|
|
invoke-virtual/range {p0 .. p0}, Lcom/moji/user/homepage/view/FlowLayout;->getPaddingRight()I
|
|
|
|
move-result v1
|
|
|
|
add-int/2addr v0, v1
|
|
|
|
add-int/2addr v0, v14
|
|
|
|
const/high16 v1, 0x40000000 # 2.0f
|
|
|
|
if-ne v9, v1, :cond_a
|
|
|
|
move v0, v7
|
|
|
|
:cond_a
|
|
if-ne v10, v1, :cond_b
|
|
|
|
goto :goto_7
|
|
|
|
:cond_b
|
|
move/from16 v8, v16
|
|
|
|
.line 162
|
|
:goto_7
|
|
invoke-virtual {v6, v0, v8}, Lcom/moji/user/homepage/view/FlowLayout;->setMeasuredDimension(II)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public setGravity(I)V
|
|
.locals 1
|
|
.annotation build Landroid/annotation/TargetApi;
|
|
value = 0xe
|
|
.end annotation
|
|
|
|
.line 344
|
|
iget v0, p0, Lcom/moji/user/homepage/view/FlowLayout;->b:I
|
|
|
|
if-eq v0, p1, :cond_2
|
|
|
|
const v0, 0x800007
|
|
|
|
and-int/2addr v0, p1
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
const v0, 0x800003
|
|
|
|
or-int/2addr p1, v0
|
|
|
|
:cond_0
|
|
and-int/lit8 v0, p1, 0x70
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
or-int/lit8 p1, p1, 0x30
|
|
|
|
.line 353
|
|
:cond_1
|
|
iput p1, p0, Lcom/moji/user/homepage/view/FlowLayout;->b:I
|
|
|
|
.line 354
|
|
invoke-virtual {p0}, Lcom/moji/user/homepage/view/FlowLayout;->requestLayout()V
|
|
|
|
:cond_2
|
|
return-void
|
|
.end method
|