LabelView.smali

.class public Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;
.super Landroid/widget/LinearLayout;


# instance fields
.field protected mContainerLayout:Landroid/view/ViewGroup;

.field private mContext:Landroid/content/Context;


# direct methods
.method public constructor <init>(Landroid/content/Context;)V
    .registers 3

    const/4 v0, 0x0

    invoke-direct {p0, p1, v0}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V

    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 4
    .param p2    # Landroid/util/AttributeSet;
        .annotation build Landroid/support/annotation/Nullable;
        .end annotation
    .end param

    const/4 v0, 0x0

    invoke-direct {p0, p1, p2, v0}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;-><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
    .registers 5
    .param p2    # Landroid/util/AttributeSet;
        .annotation build Landroid/support/annotation/Nullable;
        .end annotation
    .end param

    invoke-direct {p0, p1, p2, p3}, Landroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    const/4 v0, 0x1

    invoke-virtual {p0, v0}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->setOrientation(I)V

    iput-object p0, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContainerLayout:Landroid/view/ViewGroup;

    iput-object p1, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContext:Landroid/content/Context;

    return-void
.end method


# virtual methods
.method protected initLayout(Ljava/util/List;)V
    .registers 14
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List",
            "<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    const/4 v2, 0x0

    invoke-virtual {p0}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->getContext()Landroid/content/Context;

    move-result-object v4

    new-instance v0, Landroid/widget/LinearLayout;

    invoke-direct {v0, v4}, Landroid/widget/LinearLayout;-><init>(Landroid/content/Context;)V

    invoke-virtual {v0, v2}, Landroid/widget/LinearLayout;->setOrientation(I)V

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContainerLayout:Landroid/view/ViewGroup;

    invoke-virtual {v1, v0}, Landroid/view/ViewGroup;->addView(Landroid/view/View;)V

    invoke-virtual {p0}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->getResources()Landroid/content/res/Resources;

    move-result-object v1

    sget v3, Lcom/cmcm/xiaobao/phone/smarthome/R$dimen;->sh_sdk_margin_big:I

    invoke-virtual {v1, v3}, Landroid/content/res/Resources;->getDimension(I)F

    move-result v1

    float-to-int v5, v1

    invoke-static {}, Lcom/cmcm/xiaobao/phone/commons/utils/DimenUtils;->getScreenWidth()I

    move-result v1

    const/high16 v3, 0x42200000    # 40.0f

    invoke-static {v3}, Lcom/cmcm/xiaobao/phone/commons/utils/DimenUtils;->dp2px(F)I

    move-result v3

    sub-int/2addr v1, v3

    invoke-virtual {p0}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->getPaddingLeft()I

    move-result v3

    sub-int/2addr v1, v3

    invoke-virtual {p0}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->getPaddingRight()I

    move-result v3

    sub-int v6, v1, v3

    const/16 v7, 0xc

    invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object v8

    move v1, v2

    move-object v3, v0

    :cond_3b
    :goto_3b
    invoke-interface {v8}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_a9

    invoke-interface {v8}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/String;

    new-instance v9, Landroid/widget/TextView;

    invoke-direct {v9, v4}, Landroid/widget/TextView;-><init>(Landroid/content/Context;)V

    sget v10, Lcom/cmcm/xiaobao/phone/smarthome/R$drawable;->sh_sdk_shape_label:I

    invoke-virtual {v9, v10}, Landroid/widget/TextView;->setBackgroundResource(I)V

    iget-object v10, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContext:Landroid/content/Context;

    sget v11, Lcom/cmcm/xiaobao/phone/smarthome/R$color;->half_black:I

    invoke-static {v10, v11}, Landroid/support/v4/content/ContextCompat;->getColor(Landroid/content/Context;I)I

    move-result v10

    invoke-virtual {v9, v10}, Landroid/widget/TextView;->setTextColor(I)V

    invoke-virtual {v9, v0}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V

    invoke-virtual {v9}, Landroid/widget/TextView;->setSingleLine()V

    int-to-float v10, v7

    invoke-virtual {v9, v10}, Landroid/widget/TextView;->setTextSize(F)V

    invoke-virtual {v9}, Landroid/widget/TextView;->getPaint()Landroid/text/TextPaint;

    move-result-object v10

    invoke-virtual {v10, v0}, Landroid/text/TextPaint;->measureText(Ljava/lang/String;)F

    move-result v0

    float-to-int v0, v0

    invoke-virtual {v9}, Landroid/widget/TextView;->getPaddingLeft()I

    move-result v10

    add-int/2addr v0, v10

    invoke-virtual {v9}, Landroid/widget/TextView;->getPaddingRight()I

    move-result v10

    add-int/2addr v0, v10

    add-int/2addr v0, v5

    add-int v10, v1, v0

    if-le v10, v6, :cond_95

    new-instance v3, Landroid/widget/LinearLayout;

    invoke-direct {v3, v4}, Landroid/widget/LinearLayout;-><init>(Landroid/content/Context;)V

    invoke-virtual {v3, v2}, Landroid/widget/LinearLayout;->setOrientation(I)V

    const/high16 v1, 0x41400000    # 12.0f

    invoke-static {v1}, Lcom/cmcm/xiaobao/phone/commons/utils/DimenUtils;->dp2px(F)I

    move-result v1

    invoke-virtual {v3, v2, v1, v2, v2}, Landroid/widget/LinearLayout;->setPadding(IIII)V

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContainerLayout:Landroid/view/ViewGroup;

    invoke-virtual {v1, v3}, Landroid/view/ViewGroup;->addView(Landroid/view/View;)V

    move v1, v2

    :cond_95
    invoke-virtual {v3, v9}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;)V

    add-int/2addr v1, v0

    invoke-virtual {v3}, Landroid/widget/LinearLayout;->getChildCount()I

    move-result v0

    const/4 v10, 0x1

    if-eq v0, v10, :cond_3b

    invoke-virtual {v9}, Landroid/widget/TextView;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;

    move-result-object v0

    check-cast v0, Landroid/widget/LinearLayout$LayoutParams;

    iput v5, v0, Landroid/widget/LinearLayout$LayoutParams;->leftMargin:I

    goto :goto_3b

    :cond_a9
    return-void
.end method

.method public setLabelText(Ljava/util/List;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List",
            "<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContainerLayout:Landroid/view/ViewGroup;

    if-nez v0, :cond_d

    new-instance v0, Ljava/lang/IllegalArgumentException;

    const-string/jumbo v1, "container can not be null"

    invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v0

    :cond_d
    const/4 v0, 0x0

    iget-object v1, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContainerLayout:Landroid/view/ViewGroup;

    invoke-virtual {v1}, Landroid/view/ViewGroup;->getChildCount()I

    move-result v1

    if-le v1, v0, :cond_1b

    iget-object v0, p0, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->mContainerLayout:Landroid/view/ViewGroup;

    invoke-virtual {v0}, Landroid/view/ViewGroup;->removeAllViews()V

    :cond_1b
    invoke-virtual {p0, p1}, Lcom/cmcm/xiaobao/phone/smarthome/widget/LabelView;->initLayout(Ljava/util/List;)V

    return-void
.end method