.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 (Landroid/content/Context;)V .locals 1 const/4 v0, 0x0 .line 51 invoke-direct {p0, p1, v0}, Lcom/moji/user/homepage/view/FlowLayout;->(Landroid/content/Context;Landroid/util/AttributeSet;)V return-void .end method .method public constructor (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;->(Landroid/content/Context;Landroid/util/AttributeSet;I)V return-void .end method .method public constructor (Landroid/content/Context;Landroid/util/AttributeSet;I)V .locals 2 .line 59 invoke-direct {p0, p1, p2, p3}, Landroid/view/ViewGroup;->(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;->()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;->()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;->()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;->()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;->(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;->(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;->(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;->()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;->()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