SlidingTabLayout.smali

.class public Lcom/tablayout/SlidingTabLayout;
.super Landroid/widget/HorizontalScrollView;
.source "SlidingTabLayout.java"

# interfaces
.implements Landroidx/viewpager/widget/ViewPager$OnPageChangeListener;


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lcom/tablayout/SlidingTabLayout$InnerPagerAdapter;
    }
.end annotation


# static fields
.field private static final STYLE_BLOCK:I

.field private static final STYLE_NORMAL:I

.field private static final STYLE_TRIANGLE:I

.field private static final TEXT_BOLD_BOTH:I

.field private static final TEXT_BOLD_NONE:I

.field private static final TEXT_BOLD_WHEN_SELECT:I


# instance fields
.field private mContext:Landroid/content/Context;

.field private mCurrentPositionOffset:F

.field private mCurrentTab:I

.field private mDividerColor:I

.field private mDividerPadding:F

.field private mDividerPaint:Landroid/graphics/Paint;

.field private mDividerWidth:F

.field private mEndIndicatorColor:I

.field private mHeight:I

.field private mIndicatorColor:I

.field private mIndicatorCornerRadius:F

.field private mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

.field private mIndicatorGravity:I

.field private mIndicatorHeight:F

.field private mIndicatorMarginBottom:F

.field private mIndicatorMarginLeft:F

.field private mIndicatorMarginRight:F

.field private mIndicatorMarginTop:F

.field private mIndicatorRect:Landroid/graphics/Rect;

.field private mIndicatorStyle:I

.field private mIndicatorWidth:F

.field private mIndicatorWidthEqualTitle:Z

.field private mInitSetMap:Landroid/util/SparseArray;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Landroid/util/SparseArray<",
            "Ljava/lang/Boolean;",
            ">;"
        }
    .end annotation
.end field

.field private mLastScrollX:I

.field private mListener:Lcom/tablayout/listener/OnTabSelectListener;

.field private mMsgViewBackgroundColor:I

.field private mMsgViewWidth:I

.field private mRectPaint:Landroid/graphics/Paint;

.field private mReleaseListener:Lcom/tablayout/listener/OnTabReleaseListener;

.field private mSnapOnTabClick:Z

.field private mTabCount:I

.field private mTabPadding:F

.field private mTabPaddingBottom:F

.field private mTabPaddingTop:F

.field private mTabRect:Landroid/graphics/Rect;

.field private mTabSpaceEqual:Z

.field private mTabWidth:F

.field private mTabsContainer:Landroid/widget/LinearLayout;

.field private mTextAllCaps:Z

.field private mTextBold:I

.field private mTextPaint:Landroid/graphics/Paint;

.field private mTextSelectColor:I

.field private mTextSelectSize:F

.field private mTextUnselectColor:I

.field private mTextsize:F

.field private mTitles:Ljava/util/ArrayList;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/ArrayList<",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation
.end field

.field private mTrianglePaint:Landroid/graphics/Paint;

.field private mTrianglePath:Landroid/graphics/Path;

.field private mUnderlineColor:I

.field private mUnderlineGravity:I

.field private mUnderlineHeight:F

.field private mViewPager:Landroidx/viewpager/widget/ViewPager;

.field private margin:F

.field private prevTab:I


# direct methods
.method static constructor <clinit>()V
    .registers 1

    const v0, 0x156d

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    sput v0, Lcom/tablayout/SlidingTabLayout;->STYLE_BLOCK:I

    const v0, 0x156f

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    sput v0, Lcom/tablayout/SlidingTabLayout;->STYLE_NORMAL:I

    const v0, 0x156e

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    sput v0, Lcom/tablayout/SlidingTabLayout;->STYLE_TRIANGLE:I

    const v0, 0x156d

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    sput v0, Lcom/tablayout/SlidingTabLayout;->TEXT_BOLD_BOTH:I

    const v0, 0x156f

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    sput v0, Lcom/tablayout/SlidingTabLayout;->TEXT_BOLD_NONE:I

    const v0, 0x156e

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    sput v0, Lcom/tablayout/SlidingTabLayout;->TEXT_BOLD_WHEN_SELECT:I

    return-void
.end method

.method public constructor <init>(Landroid/content/Context;)V
    .registers 4
    .param p1, "context"    # Landroid/content/Context;

    .line 127
    const/4 v0, 0x0

    const/4 v1, 0x0

    invoke-direct {p0, p1, v0, v1}, Lcom/tablayout/SlidingTabLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    .line 128
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 4
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;

    .line 131
    const/4 v0, 0x0

    invoke-direct {p0, p1, p2, v0}, Lcom/tablayout/SlidingTabLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V

    .line 132
    return-void
.end method

.method public constructor <init>(Landroid/content/Context;Landroid/util/AttributeSet;I)V
    .registers 9
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;
    .param p3, "defStyleAttr"    # I

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

    .line 55
    new-instance v0, Landroid/graphics/Rect;

    invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    .line 59
    new-instance v0, Landroid/graphics/Rect;

    invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabRect:Landroid/graphics/Rect;

    .line 60
    new-instance v0, Landroid/graphics/drawable/GradientDrawable;

    sget-object v1, Landroid/graphics/drawable/GradientDrawable$Orientation;->LEFT_RIGHT:Landroid/graphics/drawable/GradientDrawable$Orientation;

    const/4 v2, 0x0

    invoke-direct {v0, v1, v2}, Landroid/graphics/drawable/GradientDrawable;-><init>(Landroid/graphics/drawable/GradientDrawable$Orientation;[I)V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    .line 62
    new-instance v0, Landroid/graphics/Paint;

    const/4 v1, 0x1

    invoke-direct {v0, v1}, Landroid/graphics/Paint;-><init>(I)V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mRectPaint:Landroid/graphics/Paint;

    .line 63
    new-instance v0, Landroid/graphics/Paint;

    invoke-direct {v0, v1}, Landroid/graphics/Paint;-><init>(I)V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPaint:Landroid/graphics/Paint;

    .line 64
    new-instance v0, Landroid/graphics/Paint;

    invoke-direct {v0, v1}, Landroid/graphics/Paint;-><init>(I)V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePaint:Landroid/graphics/Paint;

    .line 65
    new-instance v0, Landroid/graphics/Path;

    invoke-direct {v0}, Landroid/graphics/Path;-><init>()V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePath:Landroid/graphics/Path;

    .line 69
    const/4 v0, 0x0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    .line 75
    const/high16 v2, -0x40800000    # -1.0f

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    .line 291
    const/4 v2, -0x1

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->prevTab:I

    .line 886
    new-instance v2, Landroid/graphics/Paint;

    invoke-direct {v2, v1}, Landroid/graphics/Paint;-><init>(I)V

    iput-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    .line 887
    new-instance v2, Landroid/util/SparseArray;

    invoke-direct {v2}, Landroid/util/SparseArray;-><init>()V

    iput-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mInitSetMap:Landroid/util/SparseArray;

    .line 136
    invoke-virtual {p0, v1}, Lcom/tablayout/SlidingTabLayout;->setFillViewport(Z)V

    .line 137
    invoke-virtual {p0, v0}, Lcom/tablayout/SlidingTabLayout;->setWillNotDraw(Z)V

    .line 138
    invoke-virtual {p0, v0}, Lcom/tablayout/SlidingTabLayout;->setClipChildren(Z)V

    .line 139
    invoke-virtual {p0, v0}, Lcom/tablayout/SlidingTabLayout;->setClipToPadding(Z)V

    .line 141
    iput-object p1, p0, Lcom/tablayout/SlidingTabLayout;->mContext:Landroid/content/Context;

    .line 142
    new-instance v2, Landroid/widget/LinearLayout;

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

    iput-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    .line 143
    invoke-virtual {p0, v2}, Lcom/tablayout/SlidingTabLayout;->addView(Landroid/view/View;)V

    .line 145
    if-eqz p2, :cond_9c

    .line 147
    invoke-direct {p0, p1, p2}, Lcom/tablayout/SlidingTabLayout;->obtainAttributes(Landroid/content/Context;Landroid/util/AttributeSet;)V

    .line 150
    const-string v2, "http://schemas.android.com/apk/res/android"

    const-string v3, "layout_height"

    invoke-interface {p2, v2, v3}, Landroid/util/AttributeSet;->getAttributeValue(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    .line 152
    .local v2, "height":Ljava/lang/String;
    const-string v3, "-1"

    invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v3

    if-eqz v3, :cond_7e

    goto :goto_9c

    .line 153
    :cond_7e
    const-string v3, "-2"

    invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v3

    if-eqz v3, :cond_87

    goto :goto_9c

    .line 155
    :cond_87
    new-array v1, v1, [I

    const v3, 0x10100f5

    aput v3, v1, v0

    .line 156
    .local v1, "systemAttrs":[I
    invoke-virtual {p1, p2, v1}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;

    move-result-object v3

    .line 157
    .local v3, "a":Landroid/content/res/TypedArray;
    const/4 v4, -0x2

    invoke-virtual {v3, v0, v4}, Landroid/content/res/TypedArray;->getDimensionPixelSize(II)I

    move-result v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mHeight:I

    .line 158
    invoke-virtual {v3}, Landroid/content/res/TypedArray;->recycle()V

    .line 161
    .end local v1    # "systemAttrs":[I
    .end local v2    # "height":Ljava/lang/String;
    .end local v3    # "a":Landroid/content/res/TypedArray;
    :cond_9c
    :goto_9c
    return-void
.end method

.method static synthetic access$000(Lcom/tablayout/SlidingTabLayout;)Landroid/widget/LinearLayout;
    .registers 2
    .param p0, "x0"    # Lcom/tablayout/SlidingTabLayout;

    .line 44
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    return-object v0
.end method

.method static synthetic access$100(Lcom/tablayout/SlidingTabLayout;)Landroidx/viewpager/widget/ViewPager;
    .registers 2
    .param p0, "x0"    # Lcom/tablayout/SlidingTabLayout;

    .line 44
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    return-object v0
.end method

.method static synthetic access$200(Lcom/tablayout/SlidingTabLayout;)Lcom/tablayout/listener/OnTabReleaseListener;
    .registers 2
    .param p0, "x0"    # Lcom/tablayout/SlidingTabLayout;

    .line 44
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mReleaseListener:Lcom/tablayout/listener/OnTabReleaseListener;

    return-object v0
.end method

.method static synthetic access$300(Lcom/tablayout/SlidingTabLayout;)Z
    .registers 2
    .param p0, "x0"    # Lcom/tablayout/SlidingTabLayout;

    .line 44
    iget-boolean v0, p0, Lcom/tablayout/SlidingTabLayout;->mSnapOnTabClick:Z

    return v0
.end method

.method static synthetic access$400(Lcom/tablayout/SlidingTabLayout;)Lcom/tablayout/listener/OnTabSelectListener;
    .registers 2
    .param p0, "x0"    # Lcom/tablayout/SlidingTabLayout;

    .line 44
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mListener:Lcom/tablayout/listener/OnTabSelectListener;

    return-object v0
.end method

.method private addTab(ILjava/lang/String;Landroid/view/View;)V
    .registers 10
    .param p1, "position"    # I
    .param p2, "title"    # Ljava/lang/String;
    .param p3, "tabView"    # Landroid/view/View;

    .line 297
    const v0, 0x7f091339

    invoke-static {v0}, Lnp/NPFog;->d(I)I

    move-result v0

    invoke-virtual {p3, v0}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v0

    check-cast v0, Landroid/widget/TextView;

    .line 298
    .local v0, "tv_tab_title":Landroid/widget/TextView;
    if-eqz v0, :cond_14

    .line 299
    if-eqz p2, :cond_14

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

    .line 302
    :cond_14
    new-instance v1, Lcom/tablayout/SlidingTabLayout$1;

    invoke-direct {v1, p0}, Lcom/tablayout/SlidingTabLayout$1;-><init>(Lcom/tablayout/SlidingTabLayout;)V

    invoke-virtual {p3, v1}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V

    .line 329
    const v1, 0x7f091697

    invoke-static {v1}, Lnp/NPFog;->d(I)I

    move-result v1

    invoke-virtual {p3, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v1

    check-cast v1, Lcom/tablayout/widget/MsgView;

    .line 330
    .local v1, "msgView":Lcom/tablayout/widget/MsgView;
    if-eqz v1, :cond_39

    .line 331
    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mMsgViewBackgroundColor:I

    if-eqz v2, :cond_32

    .line 332
    invoke-virtual {v1, v2}, Lcom/tablayout/widget/MsgView;->setBackgroundColor(I)V

    .line 334
    :cond_32
    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mMsgViewWidth:I

    if-eqz v2, :cond_39

    .line 335
    invoke-virtual {v1, v2}, Lcom/tablayout/widget/MsgView;->setWidth(I)V

    .line 340
    :cond_39
    iget-boolean v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabSpaceEqual:Z

    const/4 v3, -0x1

    if-eqz v2, :cond_47

    new-instance v2, Landroid/widget/LinearLayout$LayoutParams;

    const/4 v4, 0x0

    const/high16 v5, 0x3f800000    # 1.0f

    invoke-direct {v2, v4, v3, v5}, Landroid/widget/LinearLayout$LayoutParams;-><init>(IIF)V

    goto :goto_4d

    :cond_47
    new-instance v2, Landroid/widget/LinearLayout$LayoutParams;

    const/4 v4, -0x2

    invoke-direct {v2, v4, v3}, Landroid/widget/LinearLayout$LayoutParams;-><init>(II)V

    .line 343
    .local v2, "lp_tab":Landroid/widget/LinearLayout$LayoutParams;
    :goto_4d
    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    const/4 v5, 0x0

    cmpl-float v4, v4, v5

    if-lez v4, :cond_5d

    .line 344
    new-instance v4, Landroid/widget/LinearLayout$LayoutParams;

    iget v5, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    float-to-int v5, v5

    invoke-direct {v4, v5, v3}, Landroid/widget/LinearLayout$LayoutParams;-><init>(II)V

    move-object v2, v4

    .line 347
    :cond_5d
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v3, p3, p1, v2}, Landroid/widget/LinearLayout;->addView(Landroid/view/View;ILandroid/view/ViewGroup$LayoutParams;)V

    .line 348
    return-void
.end method

.method private calcIndicatorRect()V
    .registers 14

    .line 459
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    invoke-virtual {v0, v1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v0

    .line 460
    .local v0, "currentTabView":Landroid/view/View;
    invoke-virtual {v0}, Landroid/view/View;->getLeft()I

    move-result v1

    int-to-float v1, v1

    .line 461
    .local v1, "left":F
    invoke-virtual {v0}, Landroid/view/View;->getRight()I

    move-result v2

    int-to-float v2, v2

    .line 464
    .local v2, "right":F
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    const v4, 0x7f090656

    const/high16 v5, 0x40000000    # 2.0f

    if-nez v3, :cond_40

    iget-boolean v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidthEqualTitle:Z

    if-eqz v3, :cond_40

    .line 465
    invoke-virtual {v0, v4}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v3

    check-cast v3, Landroid/widget/TextView;

    .line 466
    .local v3, "tab_title":Landroid/widget/TextView;
    iget-object v6, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    iget v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    invoke-virtual {v6, v7}, Landroid/graphics/Paint;->setTextSize(F)V

    .line 467
    iget-object v6, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v3}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;

    move-result-object v7

    invoke-interface {v7}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;

    move-result-object v7

    invoke-virtual {v6, v7}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F

    move-result v6

    .line 468
    .local v6, "textWidth":F
    sub-float v7, v2, v1

    sub-float/2addr v7, v6

    div-float/2addr v7, v5

    iput v7, p0, Lcom/tablayout/SlidingTabLayout;->margin:F

    .line 471
    .end local v3    # "tab_title":Landroid/widget/TextView;
    .end local v6    # "textWidth":F
    :cond_40
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    add-int/lit8 v6, v6, -0x1

    if-ge v3, v6, :cond_98

    .line 472
    iget-object v6, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    add-int/lit8 v3, v3, 0x1

    invoke-virtual {v6, v3}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v3

    .line 473
    .local v3, "nextTabView":Landroid/view/View;
    invoke-virtual {v3}, Landroid/view/View;->getLeft()I

    move-result v6

    int-to-float v6, v6

    .line 474
    .local v6, "nextTabLeft":F
    invoke-virtual {v3}, Landroid/view/View;->getRight()I

    move-result v7

    int-to-float v7, v7

    .line 476
    .local v7, "nextTabRight":F
    iget v8, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentPositionOffset:F

    sub-float v9, v6, v1

    mul-float v9, v9, v8

    add-float/2addr v1, v9

    .line 477
    sub-float v9, v7, v2

    mul-float v8, v8, v9

    add-float/2addr v2, v8

    .line 480
    iget v8, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    if-nez v8, :cond_98

    iget-boolean v8, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidthEqualTitle:Z

    if-eqz v8, :cond_98

    .line 481
    invoke-virtual {v3, v4}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v4

    check-cast v4, Landroid/widget/TextView;

    .line 482
    .local v4, "next_tab_title":Landroid/widget/TextView;
    iget-object v8, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    iget v9, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    invoke-virtual {v8, v9}, Landroid/graphics/Paint;->setTextSize(F)V

    .line 483
    iget-object v8, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v4}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;

    move-result-object v9

    invoke-interface {v9}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;

    move-result-object v9

    invoke-virtual {v8, v9}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F

    move-result v8

    .line 484
    .local v8, "nextTextWidth":F
    sub-float v9, v7, v6

    sub-float/2addr v9, v8

    div-float/2addr v9, v5

    .line 485
    .local v9, "nextMargin":F
    iget v10, p0, Lcom/tablayout/SlidingTabLayout;->margin:F

    iget v11, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentPositionOffset:F

    sub-float v12, v9, v10

    mul-float v11, v11, v12

    add-float/2addr v10, v11

    iput v10, p0, Lcom/tablayout/SlidingTabLayout;->margin:F

    .line 489
    .end local v3    # "nextTabView":Landroid/view/View;
    .end local v4    # "next_tab_title":Landroid/widget/TextView;
    .end local v6    # "nextTabLeft":F
    .end local v7    # "nextTabRight":F
    .end local v8    # "nextTextWidth":F
    .end local v9    # "nextMargin":F
    :cond_98
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    float-to-int v4, v1

    iput v4, v3, Landroid/graphics/Rect;->left:I

    .line 490
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    float-to-int v4, v2

    iput v4, v3, Landroid/graphics/Rect;->right:I

    .line 492
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    if-nez v3, :cond_bf

    iget-boolean v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidthEqualTitle:Z

    if-eqz v3, :cond_bf

    .line 493
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->margin:F

    add-float/2addr v4, v1

    const/high16 v6, 0x3f800000    # 1.0f

    sub-float/2addr v4, v6

    float-to-int v4, v4

    iput v4, v3, Landroid/graphics/Rect;->left:I

    .line 494
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->margin:F

    sub-float v4, v2, v4

    sub-float/2addr v4, v6

    float-to-int v4, v4

    iput v4, v3, Landroid/graphics/Rect;->right:I

    .line 497
    :cond_bf
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mTabRect:Landroid/graphics/Rect;

    float-to-int v4, v1

    iput v4, v3, Landroid/graphics/Rect;->left:I

    .line 498
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mTabRect:Landroid/graphics/Rect;

    float-to-int v4, v2

    iput v4, v3, Landroid/graphics/Rect;->right:I

    .line 500
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidth:F

    const/4 v4, 0x0

    cmpg-float v3, v3, v4

    if-gez v3, :cond_d1

    goto :goto_113

    .line 503
    :cond_d1
    invoke-virtual {v0}, Landroid/view/View;->getLeft()I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0}, Landroid/view/View;->getWidth()I

    move-result v4

    int-to-float v4, v4

    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidth:F

    sub-float/2addr v4, v6

    div-float/2addr v4, v5

    add-float/2addr v3, v4

    .line 505
    .local v3, "indicatorLeft":F
    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    iget v5, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    add-int/lit8 v5, v5, -0x1

    if-ge v4, v5, :cond_103

    .line 506
    iget-object v5, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    add-int/lit8 v4, v4, 0x1

    invoke-virtual {v5, v4}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v4

    .line 507
    .local v4, "nextTab":Landroid/view/View;
    iget v5, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentPositionOffset:F

    invoke-virtual {v0}, Landroid/view/View;->getWidth()I

    move-result v6

    div-int/lit8 v6, v6, 0x2

    invoke-virtual {v4}, Landroid/view/View;->getWidth()I

    move-result v7

    div-int/lit8 v7, v7, 0x2

    add-int/2addr v6, v7

    int-to-float v6, v6

    mul-float v5, v5, v6

    add-float/2addr v3, v5

    .line 510
    .end local v4    # "nextTab":Landroid/view/View;
    :cond_103
    iget-object v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    float-to-int v5, v3

    iput v5, v4, Landroid/graphics/Rect;->left:I

    .line 511
    iget-object v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v5, v4, Landroid/graphics/Rect;->left:I

    int-to-float v5, v5

    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidth:F

    add-float/2addr v5, v6

    float-to-int v5, v5

    iput v5, v4, Landroid/graphics/Rect;->right:I

    .line 513
    .end local v3    # "indicatorLeft":F
    :goto_113
    return-void
.end method

.method private obtainAttributes(Landroid/content/Context;Landroid/util/AttributeSet;)V
    .registers 13
    .param p1, "context"    # Landroid/content/Context;
    .param p2, "attrs"    # Landroid/util/AttributeSet;

    .line 164
    sget-object v0, Lim/tpelyyftgw/messenger/R$styleable;->SlidingTabLayout:[I

    invoke-virtual {p1, p2, v0}, Landroid/content/Context;->obtainStyledAttributes(Landroid/util/AttributeSet;[I)Landroid/content/res/TypedArray;

    move-result-object v0

    .line 166
    .local v0, "ta":Landroid/content/res/TypedArray;
    const/4 v1, 0x0

    const/16 v2, 0xc

    invoke-virtual {v0, v2, v1}, Landroid/content/res/TypedArray;->getInt(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    .line 167
    const-string v3, "#4B6A87"

    const-string v4, "#ffffff"

    const/4 v5, 0x2

    if-ne v2, v5, :cond_18

    move-object v2, v3

    goto :goto_19

    :cond_18
    move-object v2, v4

    :goto_19
    invoke-static {v2}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v2

    const/4 v6, 0x3

    invoke-virtual {v0, v6, v2}, Landroid/content/res/TypedArray;->getColor(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    .line 168
    const/4 v2, 0x5

    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    if-ne v6, v5, :cond_2e

    invoke-static {v3}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v3

    goto :goto_2f

    :cond_2e
    const/4 v3, 0x0

    :goto_2f
    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getColor(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mEndIndicatorColor:I

    .line 169
    const/4 v2, 0x7

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    const/4 v6, 0x1

    if-ne v3, v6, :cond_3e

    const/high16 v3, 0x40800000    # 4.0f

    goto :goto_44

    :cond_3e
    if-ne v3, v5, :cond_42

    const/4 v3, -0x1

    goto :goto_43

    :cond_42
    const/4 v3, 0x2

    :goto_43
    int-to-float v3, v3

    .line 170
    :goto_44
    invoke-virtual {p0, v3}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v3

    int-to-float v3, v3

    .line 169
    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    .line 171
    const/16 v2, 0xd

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    const/high16 v7, -0x40800000    # -1.0f

    if-ne v3, v6, :cond_5a

    const/high16 v3, 0x41200000    # 10.0f

    goto :goto_5c

    :cond_5a
    const/high16 v3, -0x40800000    # -1.0f

    :goto_5c
    invoke-virtual {p0, v3}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidth:F

    .line 172
    const/4 v2, 0x4

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    const/4 v8, 0x0

    if-ne v3, v5, :cond_70

    const/high16 v3, -0x40800000    # -1.0f

    goto :goto_71

    :cond_70
    const/4 v3, 0x0

    :goto_71
    invoke-virtual {p0, v3}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorCornerRadius:F

    .line 173
    const/16 v2, 0x9

    invoke-virtual {p0, v8}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginLeft:F

    .line 174
    const/16 v2, 0xb

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    const/high16 v9, 0x40e00000    # 7.0f

    if-ne v3, v5, :cond_94

    const/high16 v3, 0x40e00000    # 7.0f

    goto :goto_95

    :cond_94
    const/4 v3, 0x0

    :goto_95
    invoke-virtual {p0, v3}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    .line 175
    const/16 v2, 0xa

    invoke-virtual {p0, v8}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginRight:F

    .line 176
    const/16 v2, 0x8

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    if-ne v3, v5, :cond_b4

    goto :goto_b5

    :cond_b4
    const/4 v9, 0x0

    :goto_b5
    invoke-virtual {p0, v9}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginBottom:F

    .line 177
    const/4 v2, 0x6

    const/16 v3, 0x50

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getInt(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorGravity:I

    .line 178
    const/16 v2, 0xe

    invoke-virtual {v0, v2, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z

    move-result v2

    iput-boolean v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidthEqualTitle:Z

    .line 180
    const/16 v2, 0x18

    invoke-static {v4}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v9

    invoke-virtual {v0, v2, v9}, Landroid/content/res/TypedArray;->getColor(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineColor:I

    .line 181
    const/16 v2, 0x1a

    invoke-virtual {p0, v8}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v9

    int-to-float v9, v9

    invoke-virtual {v0, v2, v9}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineHeight:F

    .line 182
    const/16 v2, 0x19

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getInt(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineGravity:I

    .line 184
    invoke-static {v4}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v2

    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getColor(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mDividerColor:I

    .line 185
    invoke-virtual {p0, v8}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v2

    int-to-float v2, v2

    invoke-virtual {v0, v5, v2}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mDividerWidth:F

    .line 186
    const/high16 v2, 0x41400000    # 12.0f

    invoke-virtual {p0, v2}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v2

    int-to-float v2, v2

    invoke-virtual {v0, v6, v2}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPadding:F

    .line 188
    const/16 v2, 0x14

    const/high16 v3, 0x41600000    # 14.0f

    invoke-virtual {p0, v3}, Lcom/tablayout/SlidingTabLayout;->sp2px(F)I

    move-result v3

    int-to-float v3, v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    .line 189
    const/16 v2, 0x16

    invoke-virtual {v0, v2, v8}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectSize:F

    .line 190
    const/16 v2, 0x15

    invoke-static {v4}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getColor(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectColor:I

    .line 191
    const/16 v2, 0x17

    const-string v3, "#AAffffff"

    invoke-static {v3}, Landroid/graphics/Color;->parseColor(Ljava/lang/String;)I

    move-result v3

    invoke-virtual {v0, v2, v3}, Landroid/content/res/TypedArray;->getColor(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mTextUnselectColor:I

    .line 192
    const/16 v2, 0x13

    invoke-virtual {v0, v2, v1}, Landroid/content/res/TypedArray;->getInt(II)I

    move-result v2

    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mTextBold:I

    .line 193
    const/16 v2, 0x12

    invoke-virtual {v0, v2, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z

    move-result v2

    iput-boolean v2, p0, Lcom/tablayout/SlidingTabLayout;->mTextAllCaps:Z

    .line 195
    const/16 v2, 0x10

    invoke-virtual {v0, v2, v1}, Landroid/content/res/TypedArray;->getBoolean(IZ)Z

    move-result v1

    iput-boolean v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabSpaceEqual:Z

    .line 196
    const/16 v1, 0x11

    invoke-virtual {p0, v7}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v2

    int-to-float v2, v2

    invoke-virtual {v0, v1, v2}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v1

    iput v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    .line 197
    const/16 v2, 0xf

    iget-boolean v3, p0, Lcom/tablayout/SlidingTabLayout;->mTabSpaceEqual:Z

    if-nez v3, :cond_17c

    cmpl-float v1, v1, v8

    if-lez v1, :cond_175

    goto :goto_17c

    :cond_175
    const/high16 v1, 0x41a00000    # 20.0f

    invoke-virtual {p0, v1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v1

    goto :goto_180

    :cond_17c
    :goto_17c
    invoke-virtual {p0, v8}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v1

    :goto_180
    int-to-float v1, v1

    invoke-virtual {v0, v2, v1}, Landroid/content/res/TypedArray;->getDimension(IF)F

    move-result v1

    iput v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabPadding:F

    .line 199
    invoke-virtual {v0}, Landroid/content/res/TypedArray;->recycle()V

    .line 200
    return-void
.end method

.method private scrollToCurrentTab()V
    .registers 5

    .line 399
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-gtz v0, :cond_5

    .line 400
    return-void

    .line 403
    :cond_5
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentPositionOffset:F

    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    invoke-virtual {v1, v2}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v1

    invoke-virtual {v1}, Landroid/view/View;->getWidth()I

    move-result v1

    int-to-float v1, v1

    mul-float v0, v0, v1

    float-to-int v0, v0

    .line 405
    .local v0, "offset":I
    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    invoke-virtual {v1, v2}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v1

    invoke-virtual {v1}, Landroid/view/View;->getLeft()I

    move-result v1

    add-int/2addr v1, v0

    .line 407
    .local v1, "newScrollX":I
    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    if-gtz v2, :cond_2a

    if-lez v0, :cond_45

    .line 409
    :cond_2a
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->getWidth()I

    move-result v2

    div-int/lit8 v2, v2, 0x2

    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->getPaddingLeft()I

    move-result v3

    sub-int/2addr v2, v3

    sub-int/2addr v1, v2

    .line 410
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->calcIndicatorRect()V

    .line 411
    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabRect:Landroid/graphics/Rect;

    iget v2, v2, Landroid/graphics/Rect;->right:I

    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mTabRect:Landroid/graphics/Rect;

    iget v3, v3, Landroid/graphics/Rect;->left:I

    sub-int/2addr v2, v3

    div-int/lit8 v2, v2, 0x2

    add-int/2addr v1, v2

    .line 414
    :cond_45
    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mLastScrollX:I

    if-eq v1, v2, :cond_4f

    .line 415
    iput v1, p0, Lcom/tablayout/SlidingTabLayout;->mLastScrollX:I

    .line 420
    const/4 v2, 0x0

    invoke-virtual {p0, v1, v2}, Lcom/tablayout/SlidingTabLayout;->scrollTo(II)V

    .line 422
    :cond_4f
    return-void
.end method

.method private updateTabSelection(I)V
    .registers 13
    .param p1, "position"    # I

    .line 425
    const/4 v0, 0x0

    .local v0, "i":I
    :goto_1
    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-ge v0, v1, :cond_b7

    .line 426
    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v1, v0}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v1

    .line 427
    .local v1, "tabView":Landroid/view/View;
    const/4 v2, 0x1

    const/4 v3, 0x0

    if-ne v0, p1, :cond_11

    const/4 v4, 0x1

    goto :goto_12

    :cond_11
    const/4 v4, 0x0

    .line 428
    .local v4, "isSelect":Z
    :goto_12
    const v5, 0x7f091339

    invoke-static {v5}, Lnp/NPFog;->d(I)I

    move-result v5

    invoke-virtual {v1, v5}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v5

    check-cast v5, Landroid/widget/TextView;

    .line 430
    .local v5, "tab_title":Landroid/widget/TextView;
    if-eqz v5, :cond_b3

    .line 431
    const/4 v6, 0x0

    if-eqz v4, :cond_2a

    iget v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectSize:F

    cmpl-float v8, v7, v6

    if-nez v8, :cond_2c

    :cond_2a
    iget v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    :cond_2c
    invoke-virtual {v5, v3, v7}, Landroid/widget/TextView;->setTextSize(IF)V

    .line 432
    if-eqz v4, :cond_34

    iget v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectColor:I

    goto :goto_36

    :cond_34
    iget v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextUnselectColor:I

    :goto_36
    invoke-virtual {v5, v7}, Landroid/widget/TextView;->setTextColor(I)V

    .line 433
    iget v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextBold:I

    if-ne v7, v2, :cond_44

    .line 434
    invoke-virtual {v5}, Landroid/widget/TextView;->getPaint()Landroid/text/TextPaint;

    move-result-object v2

    invoke-virtual {v2, v4}, Landroid/text/TextPaint;->setFakeBoldText(Z)V

    .line 436
    :cond_44
    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mReleaseListener:Lcom/tablayout/listener/OnTabReleaseListener;

    if-eqz v2, :cond_4b

    .line 437
    invoke-interface {v2, v0, v4}, Lcom/tablayout/listener/OnTabReleaseListener;->onTabRelease(IZ)V

    .line 440
    :cond_4b
    const v2, 0x7f091697

    invoke-static {v2}, Lnp/NPFog;->d(I)I

    move-result v2

    invoke-virtual {v1, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v2

    check-cast v2, Lcom/tablayout/widget/MsgView;

    .line 441
    .local v2, "tipView":Lcom/tablayout/widget/MsgView;
    if-eqz v2, :cond_b3

    invoke-virtual {v2}, Lcom/tablayout/widget/MsgView;->getVisibility()I

    move-result v7

    if-nez v7, :cond_b3

    .line 442
    iget-object v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v5}, Landroid/widget/TextView;->getTextSize()F

    move-result v8

    invoke-virtual {v7, v8}, Landroid/graphics/Paint;->setTextSize(F)V

    .line 443
    iget-object v7, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v5}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;

    move-result-object v8

    invoke-interface {v8}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;

    move-result-object v8

    invoke-virtual {v7, v8}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F

    move-result v7

    .line 444
    .local v7, "textWidth":F
    iget-object v8, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v8}, Landroid/graphics/Paint;->descent()F

    move-result v8

    iget-object v9, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v9}, Landroid/graphics/Paint;->ascent()F

    move-result v9

    sub-float/2addr v8, v9

    .line 445
    .local v8, "textHeight":F
    invoke-virtual {v2}, Lcom/tablayout/widget/MsgView;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;

    move-result-object v9

    check-cast v9, Landroid/view/ViewGroup$MarginLayoutParams;

    .line 446
    .local v9, "lp":Landroid/view/ViewGroup$MarginLayoutParams;
    iget v10, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    cmpl-float v6, v10, v6

    if-ltz v6, :cond_98

    const/high16 v6, 0x40000000    # 2.0f

    div-float/2addr v10, v6

    div-float v6, v7, v6

    add-float/2addr v10, v6

    float-to-int v6, v10

    goto :goto_9c

    :cond_98
    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mTabPadding:F

    add-float/2addr v6, v7

    float-to-int v6, v6

    :goto_9c
    iput v6, v9, Landroid/view/ViewGroup$MarginLayoutParams;->leftMargin:I

    .line 447
    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mHeight:I

    if-lez v6, :cond_ae

    int-to-float v3, v6

    sub-float/2addr v3, v8

    float-to-int v3, v3

    div-int/lit8 v3, v3, 0x2

    const/high16 v6, 0x3f800000    # 1.0f

    invoke-virtual {p0, v6}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v6

    sub-int/2addr v3, v6

    :cond_ae
    iput v3, v9, Landroid/view/ViewGroup$MarginLayoutParams;->topMargin:I

    .line 450
    invoke-virtual {v2, v9}, Lcom/tablayout/widget/MsgView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V

    .line 425
    .end local v1    # "tabView":Landroid/view/View;
    .end local v2    # "tipView":Lcom/tablayout/widget/MsgView;
    .end local v4    # "isSelect":Z
    .end local v5    # "tab_title":Landroid/widget/TextView;
    .end local v7    # "textWidth":F
    .end local v8    # "textHeight":F
    .end local v9    # "lp":Landroid/view/ViewGroup$MarginLayoutParams;
    :cond_b3
    add-int/lit8 v0, v0, 0x1

    goto/16 :goto_1

    .line 454
    .end local v0    # "i":I
    :cond_b7
    return-void
.end method

.method private updateTabStyles()V
    .registers 9

    .line 351
    const/4 v0, 0x0

    .local v0, "i":I
    :goto_1
    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-ge v0, v1, :cond_81

    .line 352
    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v1, v0}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v1

    .line 354
    .local v1, "v":Landroid/view/View;
    const v2, 0x7f091339

    invoke-static {v2}, Lnp/NPFog;->d(I)I

    move-result v2

    invoke-virtual {v1, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v2

    check-cast v2, Landroid/widget/TextView;

    .line 355
    .local v2, "tv_tab_title":Landroid/widget/TextView;
    if-eqz v2, :cond_7e

    .line 356
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    if-ne v0, v3, :cond_21

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectColor:I

    goto :goto_23

    :cond_21
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextUnselectColor:I

    :goto_23
    invoke-virtual {v2, v3}, Landroid/widget/TextView;->setTextColor(I)V

    .line 357
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    if-ne v0, v3, :cond_31

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectSize:F

    const/4 v4, 0x0

    cmpl-float v4, v3, v4

    if-nez v4, :cond_33

    :cond_31
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    :cond_33
    const/4 v4, 0x0

    invoke-virtual {v2, v4, v3}, Landroid/widget/TextView;->setTextSize(IF)V

    .line 358
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mTabPadding:F

    float-to-int v5, v3

    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mTabPaddingTop:F

    float-to-int v6, v6

    float-to-int v3, v3

    iget v7, p0, Lcom/tablayout/SlidingTabLayout;->mTabPaddingBottom:F

    float-to-int v7, v7

    invoke-virtual {v2, v5, v6, v3, v7}, Landroid/widget/TextView;->setPadding(IIII)V

    .line 359
    iget-boolean v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextAllCaps:Z

    if-eqz v3, :cond_57

    .line 360
    invoke-virtual {v2}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;

    move-result-object v3

    invoke-interface {v3}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v3}, Ljava/lang/String;->toUpperCase()Ljava/lang/String;

    move-result-object v3

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

    .line 363
    :cond_57
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextBold:I

    const/4 v5, 0x2

    const/4 v6, 0x1

    if-ne v3, v5, :cond_65

    .line 364
    invoke-virtual {v2}, Landroid/widget/TextView;->getPaint()Landroid/text/TextPaint;

    move-result-object v3

    invoke-virtual {v3, v6}, Landroid/text/TextPaint;->setFakeBoldText(Z)V

    goto :goto_7e

    .line 365
    :cond_65
    if-ne v3, v6, :cond_73

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    if-ne v0, v3, :cond_73

    .line 366
    invoke-virtual {v2}, Landroid/widget/TextView;->getPaint()Landroid/text/TextPaint;

    move-result-object v3

    invoke-virtual {v3, v6}, Landroid/text/TextPaint;->setFakeBoldText(Z)V

    goto :goto_7e

    .line 367
    :cond_73
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextBold:I

    if-nez v3, :cond_7e

    .line 368
    invoke-virtual {v2}, Landroid/widget/TextView;->getPaint()Landroid/text/TextPaint;

    move-result-object v3

    invoke-virtual {v3, v4}, Landroid/text/TextPaint;->setFakeBoldText(Z)V

    .line 351
    .end local v1    # "v":Landroid/view/View;
    .end local v2    # "tv_tab_title":Landroid/widget/TextView;
    :cond_7e
    :goto_7e
    add-int/lit8 v0, v0, 0x1

    goto :goto_1

    .line 372
    .end local v0    # "i":I
    :cond_81
    return-void
.end method


# virtual methods
.method public addNewTab(Ljava/lang/String;)V
    .registers 6
    .param p1, "title"    # Ljava/lang/String;

    .line 279
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mContext:Landroid/content/Context;

    const v1, 0x7f0c013d

    const/4 v2, 0x0

    invoke-static {v0, v1, v2}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;

    move-result-object v0

    .line 280
    .local v0, "tabView":Landroid/view/View;
    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTitles:Ljava/util/ArrayList;

    if-eqz v1, :cond_11

    .line 281
    invoke-virtual {v1, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    .line 284
    :cond_11
    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTitles:Ljava/util/ArrayList;

    if-nez v1, :cond_22

    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v1}, Landroidx/viewpager/widget/ViewPager;->getAdapter()Landroidx/viewpager/widget/PagerAdapter;

    move-result-object v1

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    invoke-virtual {v1, v2}, Landroidx/viewpager/widget/PagerAdapter;->getPageTitle(I)Ljava/lang/CharSequence;

    move-result-object v1

    goto :goto_2a

    :cond_22
    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    invoke-virtual {v1, v2}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/lang/CharSequence;

    .line 285
    .local v1, "pageTitle":Ljava/lang/CharSequence;
    :goto_2a
    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    invoke-interface {v1}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-direct {p0, v2, v3, v0}, Lcom/tablayout/SlidingTabLayout;->addTab(ILjava/lang/String;Landroid/view/View;)V

    .line 286
    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mTitles:Ljava/util/ArrayList;

    if-nez v2, :cond_42

    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v2}, Landroidx/viewpager/widget/ViewPager;->getAdapter()Landroidx/viewpager/widget/PagerAdapter;

    move-result-object v2

    invoke-virtual {v2}, Landroidx/viewpager/widget/PagerAdapter;->getCount()I

    move-result v2

    goto :goto_46

    :cond_42
    invoke-virtual {v2}, Ljava/util/ArrayList;->size()I

    move-result v2

    :goto_46
    iput v2, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    .line 288
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 289
    return-void
.end method

.method protected dp2px(F)I
    .registers 5
    .param p1, "dp"    # F

    .line 1047
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mContext:Landroid/content/Context;

    invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v0

    invoke-virtual {v0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v0

    iget v0, v0, Landroid/util/DisplayMetrics;->density:F

    .line 1048
    .local v0, "scale":F
    mul-float v1, p1, v0

    const/high16 v2, 0x3f000000    # 0.5f

    add-float/2addr v1, v2

    float-to-int v1, v1

    return v1
.end method

.method public getCurrentTab()I
    .registers 2

    .line 778
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    return v0
.end method

.method public getDividerColor()I
    .registers 2

    .line 842
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerColor:I

    return v0
.end method

.method public getDividerPadding()F
    .registers 2

    .line 850
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPadding:F

    return v0
.end method

.method public getDividerWidth()F
    .registers 2

    .line 846
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerWidth:F

    return v0
.end method

.method public getIndicatorColor()I
    .registers 2

    .line 798
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    return v0
.end method

.method public getIndicatorCornerRadius()F
    .registers 2

    .line 814
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorCornerRadius:F

    return v0
.end method

.method public getIndicatorEndColor()I
    .registers 2

    .line 802
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mEndIndicatorColor:I

    return v0
.end method

.method public getIndicatorHeight()F
    .registers 2

    .line 806
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    return v0
.end method

.method public getIndicatorMarginBottom()F
    .registers 2

    .line 830
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginBottom:F

    return v0
.end method

.method public getIndicatorMarginLeft()F
    .registers 2

    .line 818
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginLeft:F

    return v0
.end method

.method public getIndicatorMarginRight()F
    .registers 2

    .line 826
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginRight:F

    return v0
.end method

.method public getIndicatorMarginTop()F
    .registers 2

    .line 822
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    return v0
.end method

.method public getIndicatorStyle()I
    .registers 2

    .line 782
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    return v0
.end method

.method public getIndicatorWidth()F
    .registers 2

    .line 810
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidth:F

    return v0
.end method

.method public getMsgView(I)Lcom/tablayout/widget/MsgView;
    .registers 4
    .param p1, "position"    # I

    .line 968
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-lt p1, v0, :cond_6

    .line 969
    add-int/lit8 p1, v0, -0x1

    .line 971
    :cond_6
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v0, p1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v0

    .line 972
    .local v0, "tabView":Landroid/view/View;
    const v1, 0x7f091697

    invoke-static {v1}, Lnp/NPFog;->d(I)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v1

    check-cast v1, Lcom/tablayout/widget/MsgView;

    .line 973
    .local v1, "tipView":Lcom/tablayout/widget/MsgView;
    return-object v1
.end method

.method public getTabCount()I
    .registers 2

    .line 774
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    return v0
.end method

.method public getTabPadding()F
    .registers 2

    .line 786
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabPadding:F

    return v0
.end method

.method public getTabWidth()F
    .registers 2

    .line 794
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    return v0
.end method

.method public getTextBold()I
    .registers 2

    .line 870
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextBold:I

    return v0
.end method

.method public getTextSelectColor()I
    .registers 2

    .line 862
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectColor:I

    return v0
.end method

.method public getTextSelectSize()F
    .registers 2

    .line 858
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectSize:F

    return v0
.end method

.method public getTextSize()F
    .registers 2

    .line 854
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    return v0
.end method

.method public getTextUnselectColor()I
    .registers 2

    .line 866
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextUnselectColor:I

    return v0
.end method

.method public getTitleView(I)Landroid/widget/TextView;
    .registers 4
    .param p1, "tab"    # I

    .line 878
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v0, p1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v0

    .line 879
    .local v0, "tabView":Landroid/view/View;
    const v1, 0x7f091339

    invoke-static {v1}, Lnp/NPFog;->d(I)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v1

    check-cast v1, Landroid/widget/TextView;

    .line 880
    .local v1, "tv_tab_title":Landroid/widget/TextView;
    return-object v1
.end method

.method public getUnderlineColor()I
    .registers 2

    .line 834
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineColor:I

    return v0
.end method

.method public getUnderlineHeight()F
    .registers 2

    .line 838
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineHeight:F

    return v0
.end method

.method public hideMsg(I)V
    .registers 5
    .param p1, "position"    # I

    .line 930
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-lt p1, v0, :cond_6

    .line 931
    add-int/lit8 p1, v0, -0x1

    .line 934
    :cond_6
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v0, p1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v0

    .line 935
    .local v0, "tabView":Landroid/view/View;
    const v1, 0x7f091697

    invoke-static {v1}, Lnp/NPFog;->d(I)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v1

    check-cast v1, Lcom/tablayout/widget/MsgView;

    .line 936
    .local v1, "tipView":Lcom/tablayout/widget/MsgView;
    if-eqz v1, :cond_26

    invoke-virtual {v1}, Lcom/tablayout/widget/MsgView;->getVisibility()I

    move-result v2

    if-nez v2, :cond_26

    .line 937
    const/16 v2, 0x8

    invoke-virtual {v1, v2}, Lcom/tablayout/widget/MsgView;->setVisibility(I)V

    .line 939
    :cond_26
    return-void
.end method

.method public isTabSpaceEqual()Z
    .registers 2

    .line 790
    iget-boolean v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabSpaceEqual:Z

    return v0
.end method

.method public isTextAllCaps()Z
    .registers 2

    .line 874
    iget-boolean v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextAllCaps:Z

    return v0
.end method

.method public notifyDataSetChanged()V
    .registers 5

    .line 266
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

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

    .line 267
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTitles:Ljava/util/ArrayList;

    if-nez v0, :cond_14

    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0}, Landroidx/viewpager/widget/ViewPager;->getAdapter()Landroidx/viewpager/widget/PagerAdapter;

    move-result-object v0

    invoke-virtual {v0}, Landroidx/viewpager/widget/PagerAdapter;->getCount()I

    move-result v0

    goto :goto_18

    :cond_14
    invoke-virtual {v0}, Ljava/util/ArrayList;->size()I

    move-result v0

    :goto_18
    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    .line 269
    const/4 v0, 0x0

    .local v0, "i":I
    :goto_1b
    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-ge v0, v1, :cond_48

    .line 270
    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mContext:Landroid/content/Context;

    const v2, 0x7f0c013d

    const/4 v3, 0x0

    invoke-static {v1, v2, v3}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View;

    move-result-object v1

    .line 271
    .local v1, "tabView":Landroid/view/View;
    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mTitles:Ljava/util/ArrayList;

    if-nez v2, :cond_38

    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v2}, Landroidx/viewpager/widget/ViewPager;->getAdapter()Landroidx/viewpager/widget/PagerAdapter;

    move-result-object v2

    invoke-virtual {v2, v0}, Landroidx/viewpager/widget/PagerAdapter;->getPageTitle(I)Ljava/lang/CharSequence;

    move-result-object v2

    goto :goto_3e

    :cond_38
    invoke-virtual {v2, v0}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Ljava/lang/CharSequence;

    .line 272
    .local v2, "pageTitle":Ljava/lang/CharSequence;
    :goto_3e
    invoke-interface {v2}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;

    move-result-object v3

    invoke-direct {p0, v0, v3, v1}, Lcom/tablayout/SlidingTabLayout;->addTab(ILjava/lang/String;Landroid/view/View;)V

    .line 269
    .end local v2    # "pageTitle":Ljava/lang/CharSequence;
    add-int/lit8 v0, v0, 0x1

    goto :goto_1b

    .line 275
    .end local v0    # "i":I
    .end local v1    # "tabView":Landroid/view/View;
    :cond_48
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 276
    return-void
.end method

.method protected onDraw(Landroid/graphics/Canvas;)V
    .registers 14
    .param p1, "canvas"    # Landroid/graphics/Canvas;

    .line 517
    invoke-super {p0, p1}, Landroid/widget/HorizontalScrollView;->onDraw(Landroid/graphics/Canvas;)V

    .line 519
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->isInEditMode()Z

    move-result v0

    if-nez v0, :cond_1dc

    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-gtz v0, :cond_f

    goto/16 :goto_1dc

    .line 523
    :cond_f
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->getHeight()I

    move-result v6

    .line 524
    .local v6, "height":I
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->getPaddingLeft()I

    move-result v7

    .line 526
    .local v7, "paddingLeft":I
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerWidth:F

    const/4 v8, 0x1

    const/4 v9, 0x0

    cmpl-float v1, v0, v9

    if-lez v1, :cond_54

    .line 527
    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPaint:Landroid/graphics/Paint;

    invoke-virtual {v1, v0}, Landroid/graphics/Paint;->setStrokeWidth(F)V

    .line 528
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPaint:Landroid/graphics/Paint;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mDividerColor:I

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 529
    const/4 v0, 0x0

    move v10, v0

    .local v10, "i":I
    :goto_2d
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    sub-int/2addr v0, v8

    if-ge v10, v0, :cond_54

    .line 530
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v0, v10}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v11

    .line 531
    .local v11, "tab":Landroid/view/View;
    invoke-virtual {v11}, Landroid/view/View;->getRight()I

    move-result v0

    add-int/2addr v0, v7

    int-to-float v1, v0

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPadding:F

    invoke-virtual {v11}, Landroid/view/View;->getRight()I

    move-result v0

    add-int/2addr v0, v7

    int-to-float v3, v0

    int-to-float v0, v6

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPadding:F

    sub-float v4, v0, v4

    iget-object v5, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPaint:Landroid/graphics/Paint;

    move-object v0, p1

    invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawLine(FFFFLandroid/graphics/Paint;)V

    .line 529
    .end local v11    # "tab":Landroid/view/View;
    add-int/lit8 v10, v10, 0x1

    goto :goto_2d

    .line 536
    .end local v10    # "i":I
    :cond_54
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineHeight:F

    const/16 v10, 0x50

    cmpl-float v0, v0, v9

    if-lez v0, :cond_8f

    .line 537
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mRectPaint:Landroid/graphics/Paint;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineColor:I

    invoke-virtual {v0, v1}, Landroid/graphics/Paint;->setColor(I)V

    .line 538
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineGravity:I

    if-ne v0, v10, :cond_7d

    .line 539
    int-to-float v1, v7

    int-to-float v0, v6

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineHeight:F

    sub-float v2, v0, v2

    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

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

    move-result v0

    add-int/2addr v0, v7

    int-to-float v3, v0

    int-to-float v4, v6

    iget-object v5, p0, Lcom/tablayout/SlidingTabLayout;->mRectPaint:Landroid/graphics/Paint;

    move-object v0, p1

    invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V

    goto :goto_8f

    .line 541
    :cond_7d
    int-to-float v1, v7

    const/4 v2, 0x0

    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

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

    move-result v0

    add-int/2addr v0, v7

    int-to-float v3, v0

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineHeight:F

    iget-object v5, p0, Lcom/tablayout/SlidingTabLayout;->mRectPaint:Landroid/graphics/Paint;

    move-object v0, p1

    invoke-virtual/range {v0 .. v5}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V

    .line 547
    :cond_8f
    :goto_8f
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->calcIndicatorRect()V

    .line 548
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    const/4 v1, 0x2

    if-ne v0, v8, :cond_e5

    .line 549
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    cmpl-float v0, v0, v9

    if-lez v0, :cond_1db

    .line 550
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePaint:Landroid/graphics/Paint;

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    invoke-virtual {v0, v2}, Landroid/graphics/Paint;->setColor(I)V

    .line 551
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePath:Landroid/graphics/Path;

    invoke-virtual {v0}, Landroid/graphics/Path;->reset()V

    .line 552
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePath:Landroid/graphics/Path;

    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v2, v2, Landroid/graphics/Rect;->left:I

    add-int/2addr v2, v7

    int-to-float v2, v2

    int-to-float v3, v6

    invoke-virtual {v0, v2, v3}, Landroid/graphics/Path;->moveTo(FF)V

    .line 553
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePath:Landroid/graphics/Path;

    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v2, v2, Landroid/graphics/Rect;->left:I

    div-int/2addr v2, v1

    add-int/2addr v2, v7

    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v3, v3, Landroid/graphics/Rect;->right:I

    div-int/2addr v3, v1

    add-int/2addr v2, v3

    int-to-float v1, v2

    int-to-float v2, v6

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    sub-float/2addr v2, v3

    invoke-virtual {v0, v1, v2}, Landroid/graphics/Path;->lineTo(FF)V

    .line 554
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePath:Landroid/graphics/Path;

    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v1, v1, Landroid/graphics/Rect;->right:I

    add-int/2addr v1, v7

    int-to-float v1, v1

    int-to-float v2, v6

    invoke-virtual {v0, v1, v2}, Landroid/graphics/Path;->lineTo(FF)V

    .line 555
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePath:Landroid/graphics/Path;

    invoke-virtual {v0}, Landroid/graphics/Path;->close()V

    .line 556
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePath:Landroid/graphics/Path;

    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTrianglePaint:Landroid/graphics/Paint;

    invoke-virtual {p1, v0, v1}, Landroid/graphics/Canvas;->drawPath(Landroid/graphics/Path;Landroid/graphics/Paint;)V

    goto/16 :goto_1db

    .line 558
    :cond_e5
    const/4 v2, 0x0

    if-ne v0, v1, :cond_15e

    .line 559
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    cmpg-float v0, v0, v9

    if-gez v0, :cond_f7

    .line 560
    int-to-float v0, v6

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    sub-float/2addr v0, v3

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginBottom:F

    sub-float/2addr v0, v3

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    .line 565
    :cond_f7
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    cmpl-float v3, v0, v9

    if-lez v3, :cond_1db

    .line 566
    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorCornerRadius:F

    const/high16 v4, 0x40000000    # 2.0f

    cmpg-float v5, v3, v9

    if-ltz v5, :cond_10a

    div-float/2addr v0, v4

    cmpl-float v0, v3, v0

    if-lez v0, :cond_10f

    .line 567
    :cond_10a
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    div-float/2addr v0, v4

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorCornerRadius:F

    .line 570
    :cond_10f
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mEndIndicatorColor:I

    if-eqz v0, :cond_128

    .line 571
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    invoke-virtual {v0, v2}, Landroid/graphics/drawable/GradientDrawable;->setGradientType(I)V

    .line 572
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    new-array v1, v1, [I

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    aput v3, v1, v2

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mEndIndicatorColor:I

    aput v2, v1, v8

    invoke-virtual {v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setColors([I)V

    goto :goto_12f

    .line 574
    :cond_128
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    invoke-virtual {v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setColor(I)V

    .line 576
    :goto_12f
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginLeft:F

    float-to-int v1, v1

    add-int/2addr v1, v7

    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v2, v2, Landroid/graphics/Rect;->left:I

    add-int/2addr v1, v2

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    float-to-int v2, v2

    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v3, v3, Landroid/graphics/Rect;->right:I

    add-int/2addr v3, v7

    int-to-float v3, v3

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginRight:F

    sub-float/2addr v3, v4

    float-to-int v3, v3

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    iget v5, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    add-float/2addr v4, v5

    float-to-int v4, v4

    invoke-virtual {v0, v1, v2, v3, v4}, Landroid/graphics/drawable/GradientDrawable;->setBounds(IIII)V

    .line 579
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorCornerRadius:F

    invoke-virtual {v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setCornerRadius(F)V

    .line 580
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    invoke-virtual {v0, p1}, Landroid/graphics/drawable/GradientDrawable;->draw(Landroid/graphics/Canvas;)V

    goto/16 :goto_1db

    .line 588
    :cond_15e
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    cmpl-float v0, v0, v9

    if-lez v0, :cond_1db

    .line 589
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorCornerRadius:F

    invoke-virtual {v0, v3}, Landroid/graphics/drawable/GradientDrawable;->setCornerRadius(F)V

    .line 590
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mEndIndicatorColor:I

    if-eqz v0, :cond_184

    .line 591
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    invoke-virtual {v0, v2}, Landroid/graphics/drawable/GradientDrawable;->setGradientType(I)V

    .line 592
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    new-array v1, v1, [I

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    aput v3, v1, v2

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mEndIndicatorColor:I

    aput v2, v1, v8

    invoke-virtual {v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setColors([I)V

    goto :goto_18b

    .line 594
    :cond_184
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    invoke-virtual {v0, v1}, Landroid/graphics/drawable/GradientDrawable;->setColor(I)V

    .line 596
    :goto_18b
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorGravity:I

    if-ne v0, v10, :cond_1b5

    .line 597
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginLeft:F

    float-to-int v1, v1

    add-int/2addr v1, v7

    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v2, v2, Landroid/graphics/Rect;->left:I

    add-int/2addr v1, v2

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    float-to-int v2, v2

    sub-int v2, v6, v2

    iget v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginBottom:F

    float-to-int v3, v3

    sub-int/2addr v2, v3

    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v3, v3, Landroid/graphics/Rect;->right:I

    add-int/2addr v3, v7

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginRight:F

    float-to-int v4, v4

    sub-int/2addr v3, v4

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginBottom:F

    float-to-int v4, v4

    sub-int v4, v6, v4

    invoke-virtual {v0, v1, v2, v3, v4}, Landroid/graphics/drawable/GradientDrawable;->setBounds(IIII)V

    goto :goto_1d6

    .line 603
    :cond_1b5
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginLeft:F

    float-to-int v1, v1

    add-int/2addr v1, v7

    iget-object v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v2, v2, Landroid/graphics/Rect;->left:I

    add-int/2addr v1, v2

    iget v2, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    float-to-int v2, v2

    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorRect:Landroid/graphics/Rect;

    iget v3, v3, Landroid/graphics/Rect;->right:I

    add-int/2addr v3, v7

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginRight:F

    float-to-int v4, v4

    sub-int/2addr v3, v4

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    float-to-int v4, v4

    iget v5, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    float-to-int v5, v5

    add-int/2addr v4, v5

    invoke-virtual {v0, v1, v2, v3, v4}, Landroid/graphics/drawable/GradientDrawable;->setBounds(IIII)V

    .line 608
    :goto_1d6
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorDrawable:Landroid/graphics/drawable/GradientDrawable;

    invoke-virtual {v0, p1}, Landroid/graphics/drawable/GradientDrawable;->draw(Landroid/graphics/Canvas;)V

    .line 611
    :cond_1db
    :goto_1db
    return-void

    .line 520
    .end local v6    # "height":I
    .end local v7    # "paddingLeft":I
    :cond_1dc
    :goto_1dc
    return-void
.end method

.method public onPageScrollStateChanged(I)V
    .registers 2
    .param p1, "state"    # I

    .line 393
    return-void
.end method

.method public onPageScrolled(IFI)V
    .registers 4
    .param p1, "position"    # I
    .param p2, "positionOffset"    # F
    .param p3, "positionOffsetPixels"    # I

    .line 380
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    .line 381
    iput p2, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentPositionOffset:F

    .line 382
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->scrollToCurrentTab()V

    .line 383
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 384
    return-void
.end method

.method public onPageSelected(I)V
    .registers 2
    .param p1, "position"    # I

    .line 388
    invoke-direct {p0, p1}, Lcom/tablayout/SlidingTabLayout;->updateTabSelection(I)V

    .line 389
    return-void
.end method

.method protected onRestoreInstanceState(Landroid/os/Parcelable;)V
    .registers 4
    .param p1, "state"    # Landroid/os/Parcelable;

    .line 1034
    instance-of v0, p1, Landroid/os/Bundle;

    if-eqz v0, :cond_29

    .line 1035
    move-object v0, p1

    check-cast v0, Landroid/os/Bundle;

    .line 1036
    .local v0, "bundle":Landroid/os/Bundle;
    const-string v1, "mCurrentTab"

    invoke-virtual {v0, v1}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I

    move-result v1

    iput v1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    .line 1037
    const-string v1, "instanceState"

    invoke-virtual {v0, v1}, Landroid/os/Bundle;->getParcelable(Ljava/lang/String;)Landroid/os/Parcelable;

    move-result-object p1

    .line 1038
    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    if-eqz v1, :cond_29

    iget-object v1, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

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

    move-result v1

    if-lez v1, :cond_29

    .line 1039
    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    invoke-direct {p0, v1}, Lcom/tablayout/SlidingTabLayout;->updateTabSelection(I)V

    .line 1040
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->scrollToCurrentTab()V

    .line 1043
    .end local v0    # "bundle":Landroid/os/Bundle;
    :cond_29
    invoke-super {p0, p1}, Landroid/widget/HorizontalScrollView;->onRestoreInstanceState(Landroid/os/Parcelable;)V

    .line 1044
    return-void
.end method

.method protected onSaveInstanceState()Landroid/os/Parcelable;
    .registers 4

    .line 1026
    new-instance v0, Landroid/os/Bundle;

    invoke-direct {v0}, Landroid/os/Bundle;-><init>()V

    .line 1027
    .local v0, "bundle":Landroid/os/Bundle;
    invoke-super {p0}, Landroid/widget/HorizontalScrollView;->onSaveInstanceState()Landroid/os/Parcelable;

    move-result-object v1

    const-string v2, "instanceState"

    invoke-virtual {v0, v2, v1}, Landroid/os/Bundle;->putParcelable(Ljava/lang/String;Landroid/os/Parcelable;)V

    .line 1028
    iget v1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    const-string v2, "mCurrentTab"

    invoke-virtual {v0, v2, v1}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V

    .line 1029
    return-object v0
.end method

.method public setCurrentTab(I)V
    .registers 3
    .param p1, "currentTab"    # I

    .line 615
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    .line 616
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0, p1}, Landroidx/viewpager/widget/ViewPager;->setCurrentItem(I)V

    .line 618
    return-void
.end method

.method public setCurrentTab(IZ)V
    .registers 4
    .param p1, "currentTab"    # I
    .param p2, "smoothScroll"    # Z

    .line 621
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mCurrentTab:I

    .line 622
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0, p1, p2}, Landroidx/viewpager/widget/ViewPager;->setCurrentItem(IZ)V

    .line 623
    return-void
.end method

.method public setDividerColor(I)V
    .registers 2
    .param p1, "dividerColor"    # I

    .line 715
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mDividerColor:I

    .line 716
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 717
    return-void
.end method

.method public setDividerPadding(F)V
    .registers 3
    .param p1, "dividerPadding"    # F

    .line 725
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerPadding:F

    .line 726
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 727
    return-void
.end method

.method public setDividerWidth(F)V
    .registers 3
    .param p1, "dividerWidth"    # F

    .line 720
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mDividerWidth:F

    .line 721
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 722
    return-void
.end method

.method public setIndicatorColor(I)V
    .registers 2
    .param p1, "indicatorColor"    # I

    .line 656
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorColor:I

    .line 657
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 658
    return-void
.end method

.method public setIndicatorCornerRadius(F)V
    .registers 3
    .param p1, "indicatorCornerRadius"    # F

    .line 676
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorCornerRadius:F

    .line 677
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 678
    return-void
.end method

.method public setIndicatorEndColor(I)V
    .registers 2
    .param p1, "indicatorColor"    # I

    .line 661
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mEndIndicatorColor:I

    .line 662
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 663
    return-void
.end method

.method public setIndicatorGravity(I)V
    .registers 2
    .param p1, "indicatorGravity"    # I

    .line 681
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorGravity:I

    .line 682
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 683
    return-void
.end method

.method public setIndicatorHeight(F)V
    .registers 3
    .param p1, "indicatorHeight"    # F

    .line 666
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorHeight:F

    .line 667
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 668
    return-void
.end method

.method public setIndicatorMargin(FFFF)V
    .registers 6
    .param p1, "indicatorMarginLeft"    # F
    .param p2, "indicatorMarginTop"    # F
    .param p3, "indicatorMarginRight"    # F
    .param p4, "indicatorMarginBottom"    # F

    .line 687
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginLeft:F

    .line 688
    invoke-virtual {p0, p2}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginTop:F

    .line 689
    invoke-virtual {p0, p3}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginRight:F

    .line 690
    invoke-virtual {p0, p4}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorMarginBottom:F

    .line 691
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 692
    return-void
.end method

.method public setIndicatorStyle(I)V
    .registers 2
    .param p1, "indicatorStyle"    # I

    .line 626
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorStyle:I

    .line 627
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 628
    return-void
.end method

.method public setIndicatorWidth(F)V
    .registers 3
    .param p1, "indicatorWidth"    # F

    .line 671
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidth:F

    .line 672
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 673
    return-void
.end method

.method public setIndicatorWidthEqualTitle(Z)V
    .registers 2
    .param p1, "indicatorWidthEqualTitle"    # Z

    .line 695
    iput-boolean p1, p0, Lcom/tablayout/SlidingTabLayout;->mIndicatorWidthEqualTitle:Z

    .line 696
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 697
    return-void
.end method

.method public setMsgMargin(IFF)V
    .registers 12
    .param p1, "position"    # I
    .param p2, "leftPadding"    # F
    .param p3, "bottomPadding"    # F

    .line 945
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-lt p1, v0, :cond_6

    .line 946
    add-int/lit8 p1, v0, -0x1

    .line 948
    :cond_6
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v0, p1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v0

    .line 949
    .local v0, "tabView":Landroid/view/View;
    const v1, 0x7f091697

    invoke-static {v1}, Lnp/NPFog;->d(I)I

    move-result v1

    invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v1

    check-cast v1, Lcom/tablayout/widget/MsgView;

    .line 950
    .local v1, "tipView":Lcom/tablayout/widget/MsgView;
    if-eqz v1, :cond_7f

    .line 951
    const v2, 0x7f091339

    invoke-static {v2}, Lnp/NPFog;->d(I)I

    move-result v2

    invoke-virtual {v0, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v2

    check-cast v2, Landroid/widget/TextView;

    .line 952
    .local v2, "tv_tab_title":Landroid/widget/TextView;
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    iget v4, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    invoke-virtual {v3, v4}, Landroid/graphics/Paint;->setTextSize(F)V

    .line 953
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v2}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;

    move-result-object v4

    invoke-interface {v4}, Ljava/lang/CharSequence;->toString()Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v3, v4}, Landroid/graphics/Paint;->measureText(Ljava/lang/String;)F

    move-result v3

    .line 954
    .local v3, "textWidth":F
    iget-object v4, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v4}, Landroid/graphics/Paint;->descent()F

    move-result v4

    iget-object v5, p0, Lcom/tablayout/SlidingTabLayout;->mTextPaint:Landroid/graphics/Paint;

    invoke-virtual {v5}, Landroid/graphics/Paint;->ascent()F

    move-result v5

    sub-float/2addr v4, v5

    .line 955
    .local v4, "textHeight":F
    invoke-virtual {v1}, Lcom/tablayout/widget/MsgView;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;

    move-result-object v5

    check-cast v5, Landroid/view/ViewGroup$MarginLayoutParams;

    .line 956
    .local v5, "lp":Landroid/view/ViewGroup$MarginLayoutParams;
    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    const/4 v7, 0x0

    cmpl-float v7, v6, v7

    if-ltz v7, :cond_5e

    const/high16 v7, 0x40000000    # 2.0f

    div-float/2addr v6, v7

    div-float v7, v3, v7

    add-float/2addr v6, v7

    goto :goto_61

    :cond_5e
    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mTabPadding:F

    add-float/2addr v6, v3

    :goto_61
    invoke-virtual {p0, p2}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v7

    int-to-float v7, v7

    add-float/2addr v6, v7

    float-to-int v6, v6

    iput v6, v5, Landroid/view/ViewGroup$MarginLayoutParams;->leftMargin:I

    .line 957
    iget v6, p0, Lcom/tablayout/SlidingTabLayout;->mHeight:I

    if-lez v6, :cond_79

    int-to-float v6, v6

    sub-float/2addr v6, v4

    float-to-int v6, v6

    div-int/lit8 v6, v6, 0x2

    invoke-virtual {p0, p3}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v7

    sub-int/2addr v6, v7

    goto :goto_7a

    :cond_79
    const/4 v6, 0x0

    :goto_7a
    iput v6, v5, Landroid/view/ViewGroup$MarginLayoutParams;->topMargin:I

    .line 960
    invoke-virtual {v1, v5}, Lcom/tablayout/widget/MsgView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V

    .line 962
    .end local v2    # "tv_tab_title":Landroid/widget/TextView;
    .end local v3    # "textWidth":F
    .end local v4    # "textHeight":F
    .end local v5    # "lp":Landroid/view/ViewGroup$MarginLayoutParams;
    :cond_7f
    return-void
.end method

.method public setMsgViewBackgroundColor(I)V
    .registers 2
    .param p1, "mMsgViewBackgroundColor"    # I

    .line 764
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mMsgViewBackgroundColor:I

    .line 765
    return-void
.end method

.method public setMsgViewWidth(I)V
    .registers 3
    .param p1, "mMsgViewWidth"    # I

    .line 768
    if-lez p1, :cond_9

    .line 769
    int-to-float v0, p1

    invoke-virtual {p0, v0}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mMsgViewWidth:I

    .line 771
    :cond_9
    return-void
.end method

.method public setOnTabReleaseListener(Lcom/tablayout/listener/OnTabReleaseListener;)V
    .registers 2
    .param p1, "listener"    # Lcom/tablayout/listener/OnTabReleaseListener;

    .line 984
    iput-object p1, p0, Lcom/tablayout/SlidingTabLayout;->mReleaseListener:Lcom/tablayout/listener/OnTabReleaseListener;

    .line 985
    return-void
.end method

.method public setOnTabSelectListener(Lcom/tablayout/listener/OnTabSelectListener;)V
    .registers 2
    .param p1, "listener"    # Lcom/tablayout/listener/OnTabSelectListener;

    .line 980
    iput-object p1, p0, Lcom/tablayout/SlidingTabLayout;->mListener:Lcom/tablayout/listener/OnTabSelectListener;

    .line 981
    return-void
.end method

.method public setSnapOnTabClick(Z)V
    .registers 2
    .param p1, "snapOnTabClick"    # Z

    .line 760
    iput-boolean p1, p0, Lcom/tablayout/SlidingTabLayout;->mSnapOnTabClick:Z

    .line 761
    return-void
.end method

.method public setTabPadding(F)V
    .registers 3
    .param p1, "tabPadding"    # F

    .line 631
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabPadding:F

    .line 632
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 633
    return-void
.end method

.method public setTabSpaceEqual(Z)V
    .registers 2
    .param p1, "tabSpaceEqual"    # Z

    .line 646
    iput-boolean p1, p0, Lcom/tablayout/SlidingTabLayout;->mTabSpaceEqual:Z

    .line 647
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 648
    return-void
.end method

.method public setTabWidth(F)V
    .registers 3
    .param p1, "tabWidth"    # F

    .line 651
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabWidth:F

    .line 652
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 653
    return-void
.end method

.method public setTextAllCaps(Z)V
    .registers 2
    .param p1, "textAllCaps"    # Z

    .line 755
    iput-boolean p1, p0, Lcom/tablayout/SlidingTabLayout;->mTextAllCaps:Z

    .line 756
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 757
    return-void
.end method

.method public setTextBold(I)V
    .registers 2
    .param p1, "textBold"    # I

    .line 750
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mTextBold:I

    .line 751
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 752
    return-void
.end method

.method public setTextSelectColor(I)V
    .registers 2
    .param p1, "textSelectColor"    # I

    .line 740
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectColor:I

    .line 741
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 742
    return-void
.end method

.method public setTextSelectSize(F)V
    .registers 3
    .param p1, "textSize"    # F

    .line 735
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->sp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextSelectSize:F

    .line 736
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 737
    return-void
.end method

.method public setTextUnselectColor(I)V
    .registers 2
    .param p1, "textUnselectColor"    # I

    .line 745
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mTextUnselectColor:I

    .line 746
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 747
    return-void
.end method

.method public setTextsize(F)V
    .registers 3
    .param p1, "textsize"    # F

    .line 730
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->sp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mTextsize:F

    .line 731
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 732
    return-void
.end method

.method public setUnderlineColor(I)V
    .registers 2
    .param p1, "underlineColor"    # I

    .line 700
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineColor:I

    .line 701
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 702
    return-void
.end method

.method public setUnderlineGravity(I)V
    .registers 2
    .param p1, "underlineGravity"    # I

    .line 710
    iput p1, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineGravity:I

    .line 711
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 712
    return-void
.end method

.method public setUnderlineHeight(F)V
    .registers 3
    .param p1, "underlineHeight"    # F

    .line 705
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mUnderlineHeight:F

    .line 706
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->invalidate()V

    .line 707
    return-void
.end method

.method public setViewPager(Landroidx/viewpager/widget/ViewPager;)V
    .registers 4
    .param p1, "vp"    # Landroidx/viewpager/widget/ViewPager;

    .line 206
    if-eqz p1, :cond_16

    invoke-virtual {p1}, Landroidx/viewpager/widget/ViewPager;->getAdapter()Landroidx/viewpager/widget/PagerAdapter;

    move-result-object v0

    if-eqz v0, :cond_16

    .line 210
    iput-object p1, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    .line 212
    invoke-virtual {p1, p0}, Landroidx/viewpager/widget/ViewPager;->removeOnPageChangeListener(Landroidx/viewpager/widget/ViewPager$OnPageChangeListener;)V

    .line 213
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0, p0}, Landroidx/viewpager/widget/ViewPager;->addOnPageChangeListener(Landroidx/viewpager/widget/ViewPager$OnPageChangeListener;)V

    .line 214
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->notifyDataSetChanged()V

    .line 215
    return-void

    .line 207
    :cond_16
    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "ViewPager or ViewPager adapter can not be NULL !"

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

    throw v0
.end method

.method public setViewPager(Landroidx/viewpager/widget/ViewPager;[Ljava/lang/String;)V
    .registers 5
    .param p1, "vp"    # Landroidx/viewpager/widget/ViewPager;
    .param p2, "titles"    # [Ljava/lang/String;

    .line 221
    if-eqz p1, :cond_42

    invoke-virtual {p1}, Landroidx/viewpager/widget/ViewPager;->getAdapter()Landroidx/viewpager/widget/PagerAdapter;

    move-result-object v0

    if-eqz v0, :cond_42

    .line 225
    if-eqz p2, :cond_3a

    array-length v0, p2

    if-eqz v0, :cond_3a

    .line 229
    array-length v0, p2

    invoke-virtual {p1}, Landroidx/viewpager/widget/ViewPager;->getAdapter()Landroidx/viewpager/widget/PagerAdapter;

    move-result-object v1

    invoke-virtual {v1}, Landroidx/viewpager/widget/PagerAdapter;->getCount()I

    move-result v1

    if-ne v0, v1, :cond_32

    .line 233
    iput-object p1, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    .line 234
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    iput-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTitles:Ljava/util/ArrayList;

    .line 235
    invoke-static {v0, p2}, Ljava/util/Collections;->addAll(Ljava/util/Collection;[Ljava/lang/Object;)Z

    .line 237
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0, p0}, Landroidx/viewpager/widget/ViewPager;->removeOnPageChangeListener(Landroidx/viewpager/widget/ViewPager$OnPageChangeListener;)V

    .line 238
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0, p0}, Landroidx/viewpager/widget/ViewPager;->addOnPageChangeListener(Landroidx/viewpager/widget/ViewPager$OnPageChangeListener;)V

    .line 239
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->notifyDataSetChanged()V

    .line 240
    return-void

    .line 230
    :cond_32
    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "Titles length must be the same as the page count !"

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

    throw v0

    .line 226
    :cond_3a
    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "Titles can not be EMPTY !"

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

    throw v0

    .line 222
    :cond_42
    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "ViewPager or ViewPager adapter can not be NULL !"

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

    throw v0
.end method

.method public setViewPager(Landroidx/viewpager/widget/ViewPager;[Ljava/lang/String;Landroidx/fragment/app/FragmentActivity;Ljava/util/ArrayList;)V
    .registers 7
    .param p1, "vp"    # Landroidx/viewpager/widget/ViewPager;
    .param p2, "titles"    # [Ljava/lang/String;
    .param p3, "fa"    # Landroidx/fragment/app/FragmentActivity;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Landroidx/viewpager/widget/ViewPager;",
            "[",
            "Ljava/lang/String;",
            "Landroidx/fragment/app/FragmentActivity;",
            "Ljava/util/ArrayList<",
            "Landroidx/fragment/app/Fragment;",
            ">;)V"
        }
    .end annotation

    .line 246
    .local p4, "fragments":Ljava/util/ArrayList;, "Ljava/util/ArrayList<Landroidx/fragment/app/Fragment;>;"
    if-eqz p1, :cond_2b

    .line 250
    if-eqz p2, :cond_23

    array-length v0, p2

    if-eqz v0, :cond_23

    .line 254
    iput-object p1, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    .line 255
    new-instance v0, Lcom/tablayout/SlidingTabLayout$InnerPagerAdapter;

    invoke-virtual {p3}, Landroidx/fragment/app/FragmentActivity;->getSupportFragmentManager()Landroidx/fragment/app/FragmentManager;

    move-result-object v1

    invoke-direct {v0, p0, v1, p4, p2}, Lcom/tablayout/SlidingTabLayout$InnerPagerAdapter;-><init>(Lcom/tablayout/SlidingTabLayout;Landroidx/fragment/app/FragmentManager;Ljava/util/ArrayList;[Ljava/lang/String;)V

    invoke-virtual {p1, v0}, Landroidx/viewpager/widget/ViewPager;->setAdapter(Landroidx/viewpager/widget/PagerAdapter;)V

    .line 257
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0, p0}, Landroidx/viewpager/widget/ViewPager;->removeOnPageChangeListener(Landroidx/viewpager/widget/ViewPager$OnPageChangeListener;)V

    .line 258
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mViewPager:Landroidx/viewpager/widget/ViewPager;

    invoke-virtual {v0, p0}, Landroidx/viewpager/widget/ViewPager;->addOnPageChangeListener(Landroidx/viewpager/widget/ViewPager$OnPageChangeListener;)V

    .line 259
    invoke-virtual {p0}, Lcom/tablayout/SlidingTabLayout;->notifyDataSetChanged()V

    .line 260
    return-void

    .line 251
    :cond_23
    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "Titles can not be EMPTY !"

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

    throw v0

    .line 247
    :cond_2b
    new-instance v0, Ljava/lang/IllegalStateException;

    const-string v1, "ViewPager can not be NULL !"

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

    throw v0
.end method

.method public setmTabPaddingBottom(F)V
    .registers 3
    .param p1, "tabPadding"    # F

    .line 636
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabPaddingBottom:F

    .line 637
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 638
    return-void
.end method

.method public setmTabPaddingTop(F)V
    .registers 3
    .param p1, "tabPadding"    # F

    .line 641
    invoke-virtual {p0, p1}, Lcom/tablayout/SlidingTabLayout;->dp2px(F)I

    move-result v0

    int-to-float v0, v0

    iput v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabPaddingTop:F

    .line 642
    invoke-direct {p0}, Lcom/tablayout/SlidingTabLayout;->updateTabStyles()V

    .line 643
    return-void
.end method

.method public showDot(I)V
    .registers 3
    .param p1, "position"    # I

    .line 920
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    if-lt p1, v0, :cond_6

    .line 921
    add-int/lit8 p1, v0, -0x1

    .line 923
    :cond_6
    const/4 v0, 0x0

    invoke-virtual {p0, p1, v0}, Lcom/tablayout/SlidingTabLayout;->showMsg(II)V

    .line 924
    return-void
.end method

.method public showMsg(II)V
    .registers 8
    .param p1, "position"    # I
    .param p2, "num"    # I

    .line 896
    iget v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabCount:I

    const/4 v1, 0x1

    if-lt p1, v0, :cond_7

    .line 897
    add-int/lit8 p1, v0, -0x1

    .line 900
    :cond_7
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mTabsContainer:Landroid/widget/LinearLayout;

    invoke-virtual {v0, p1}, Landroid/widget/LinearLayout;->getChildAt(I)Landroid/view/View;

    move-result-object v0

    .line 901
    .local v0, "tabView":Landroid/view/View;
    const v2, 0x7f091697

    invoke-static {v2}, Lnp/NPFog;->d(I)I

    move-result v2

    invoke-virtual {v0, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View;

    move-result-object v2

    check-cast v2, Lcom/tablayout/widget/MsgView;

    .line 902
    .local v2, "tipView":Lcom/tablayout/widget/MsgView;
    if-eqz v2, :cond_45

    .line 903
    invoke-static {v2, p2}, Lcom/tablayout/utils/UnreadMsgUtils;->show(Lcom/tablayout/widget/MsgView;I)V

    .line 905
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mInitSetMap:Landroid/util/SparseArray;

    invoke-virtual {v3, p1}, Landroid/util/SparseArray;->get(I)Ljava/lang/Object;

    move-result-object v3

    if-eqz v3, :cond_36

    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mInitSetMap:Landroid/util/SparseArray;

    invoke-virtual {v3, p1}, Landroid/util/SparseArray;->get(I)Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Ljava/lang/Boolean;

    invoke-virtual {v3}, Ljava/lang/Boolean;->booleanValue()Z

    move-result v3

    if-eqz v3, :cond_36

    .line 906
    return-void

    .line 909
    :cond_36
    const/4 v3, 0x0

    const/high16 v4, 0x3f800000    # 1.0f

    invoke-virtual {p0, p1, v3, v4}, Lcom/tablayout/SlidingTabLayout;->setMsgMargin(IFF)V

    .line 910
    iget-object v3, p0, Lcom/tablayout/SlidingTabLayout;->mInitSetMap:Landroid/util/SparseArray;

    invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v1

    invoke-virtual {v3, p1, v1}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V

    .line 912
    :cond_45
    return-void
.end method

.method protected sp2px(F)I
    .registers 5
    .param p1, "sp"    # F

    .line 1052
    iget-object v0, p0, Lcom/tablayout/SlidingTabLayout;->mContext:Landroid/content/Context;

    invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;

    move-result-object v0

    invoke-virtual {v0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;

    move-result-object v0

    iget v0, v0, Landroid/util/DisplayMetrics;->scaledDensity:F

    .line 1053
    .local v0, "scale":F
    mul-float v1, p1, v0

    const/high16 v2, 0x3f000000    # 0.5f

    add-float/2addr v1, v2

    float-to-int v1, v1

    return v1
.end method