a.smali
.class final Lcom/example/android/common/view/a;
.super Landroid/widget/LinearLayout;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/example/android/common/view/a$a;
}
.end annotation
# instance fields
.field a:I
.field b:I
.field c:Lcom/example/android/common/view/SlidingTabLayout$d;
.field final d:Lcom/example/android/common/view/a$a;
.field private final e:I
.field private final f:Landroid/graphics/Paint;
.field private final g:Landroid/graphics/Paint;
.field private final h:I
.field private i:I
.field private j:F
# direct methods
.method constructor <init>(Landroid/content/Context;)V
.registers 3
const/4 v0, 0x0
.line 51
invoke-direct {p0, p1, v0}, Lcom/example/android/common/view/a;-><init>(Landroid/content/Context;B)V
return-void
.end method
.method private constructor <init>(Landroid/content/Context;B)V
.registers 8
const/4 p2, 0x0
.line 55
invoke-direct {p0, p1, p2}, Landroid/widget/LinearLayout;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V
const/4 p2, 0x0
.line 56
invoke-virtual {p0, p2}, Lcom/example/android/common/view/a;->setWillNotDraw(Z)V
.line 58
invoke-virtual {p0}, Lcom/example/android/common/view/a;->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 60
new-instance v1, Landroid/util/TypedValue;
invoke-direct {v1}, Landroid/util/TypedValue;-><init>()V
.line 61
invoke-virtual {p1}, Landroid/content/Context;->getTheme()Landroid/content/res/Resources$Theme;
move-result-object p1
const/4 v2, 0x1
const v3, 0x1010030
invoke-virtual {p1, v3, v1, v2}, Landroid/content/res/Resources$Theme;->resolveAttribute(ILandroid/util/TypedValue;Z)Z
.line 63
iget p1, v1, Landroid/util/TypedValue;->data:I
.line 1158
invoke-static {p1}, Landroid/graphics/Color;->red(I)I
move-result v1
invoke-static {p1}, Landroid/graphics/Color;->green(I)I
move-result v3
.line 1159
invoke-static {p1}, Landroid/graphics/Color;->blue(I)I
move-result p1
const/16 v4, 0x26
.line 1158
invoke-static {v4, v1, v3, p1}, Landroid/graphics/Color;->argb(IIII)I
move-result p1
.line 65
iput p1, p0, Lcom/example/android/common/view/a;->h:I
.line 68
new-instance p1, Lcom/example/android/common/view/a$a;
invoke-direct {p1, p2}, Lcom/example/android/common/view/a$a;-><init>(B)V
iput-object p1, p0, Lcom/example/android/common/view/a;->d:Lcom/example/android/common/view/a$a;
new-array v1, v2, [I
const v2, -0xcc4a1b
aput v2, v1, p2
.line 1190
iput-object v1, p1, Lcom/example/android/common/view/a$a;->a:[I
const/4 p1, 0x0
mul-float p1, p1, v0
float-to-int p1, p1
.line 72
iput p1, p0, Lcom/example/android/common/view/a;->e:I
.line 73
new-instance p1, Landroid/graphics/Paint;
invoke-direct {p1}, Landroid/graphics/Paint;-><init>()V
iput-object p1, p0, Lcom/example/android/common/view/a;->f:Landroid/graphics/Paint;
.line 74
iget p2, p0, Lcom/example/android/common/view/a;->h:I
invoke-virtual {p1, p2}, Landroid/graphics/Paint;->setColor(I)V
const/high16 p1, 0x40400000 # 3.0f
mul-float v0, v0, p1
float-to-int p1, v0
.line 76
iput p1, p0, Lcom/example/android/common/view/a;->a:I
.line 77
new-instance p1, Landroid/graphics/Paint;
invoke-direct {p1}, Landroid/graphics/Paint;-><init>()V
iput-object p1, p0, Lcom/example/android/common/view/a;->g:Landroid/graphics/Paint;
return-void
.end method
# virtual methods
.method final a(IF)V
.registers 3
.line 103
iput p1, p0, Lcom/example/android/common/view/a;->i:I
.line 104
iput p2, p0, Lcom/example/android/common/view/a;->j:F
.line 105
invoke-virtual {p0}, Lcom/example/android/common/view/a;->invalidate()V
return-void
.end method
.method protected final onDraw(Landroid/graphics/Canvas;)V
.registers 14
.line 110
invoke-virtual {p0}, Lcom/example/android/common/view/a;->getHeight()I
move-result v0
.line 111
invoke-virtual {p0}, Lcom/example/android/common/view/a;->getChildCount()I
move-result v1
.line 112
iget-object v2, p0, Lcom/example/android/common/view/a;->c:Lcom/example/android/common/view/SlidingTabLayout$d;
if-eqz v2, :cond_d
goto :goto_f
:cond_d
iget-object v2, p0, Lcom/example/android/common/view/a;->d:Lcom/example/android/common/view/a$a;
:goto_f
if-lez v1, :cond_c9
.line 117
iget v1, p0, Lcom/example/android/common/view/a;->i:I
invoke-virtual {p0, v1}, Lcom/example/android/common/view/a;->getChildAt(I)Landroid/view/View;
move-result-object v1
const/4 v3, 0x0
.line 119
iget v4, p0, Lcom/example/android/common/view/a;->b:I
if-lez v4, :cond_25
.line 120
invoke-virtual {v1}, Landroid/view/View;->getWidth()I
move-result v3
iget v4, p0, Lcom/example/android/common/view/a;->b:I
sub-int/2addr v3, v4
shr-int/lit8 v3, v3, 0x1
.line 122
:cond_25
invoke-virtual {v1}, Landroid/view/View;->getLeft()I
move-result v4
add-int/2addr v4, v3
.line 123
invoke-virtual {v1}, Landroid/view/View;->getRight()I
move-result v1
sub-int/2addr v1, v3
.line 124
iget v5, p0, Lcom/example/android/common/view/a;->i:I
invoke-interface {v2, v5}, Lcom/example/android/common/view/SlidingTabLayout$d;->getIndicatorColor(I)I
move-result v5
.line 126
iget v6, p0, Lcom/example/android/common/view/a;->j:F
const/4 v7, 0x0
cmpl-float v6, v6, v7
if-lez v6, :cond_b6
iget v6, p0, Lcom/example/android/common/view/a;->i:I
.line 127
invoke-virtual {p0}, Lcom/example/android/common/view/a;->getChildCount()I
move-result v7
add-int/lit8 v7, v7, -0x1
if-ge v6, v7, :cond_b6
.line 128
iget v6, p0, Lcom/example/android/common/view/a;->i:I
add-int/lit8 v6, v6, 0x1
.line 129
invoke-interface {v2, v6}, Lcom/example/android/common/view/SlidingTabLayout$d;->getIndicatorColor(I)I
move-result v2
const/high16 v6, 0x3f800000 # 1.0f
if-eq v5, v2, :cond_8b
.line 131
iget v7, p0, Lcom/example/android/common/view/a;->j:F
sub-float v8, v6, v7
.line 2171
invoke-static {v2}, Landroid/graphics/Color;->red(I)I
move-result v9
int-to-float v9, v9
mul-float v9, v9, v7
.line 2172
invoke-static {v5}, Landroid/graphics/Color;->red(I)I
move-result v10
int-to-float v10, v10
mul-float v10, v10, v8
add-float/2addr v9, v10
.line 2173
invoke-static {v2}, Landroid/graphics/Color;->green(I)I
move-result v10
int-to-float v10, v10
mul-float v10, v10, v7
.line 2174
invoke-static {v5}, Landroid/graphics/Color;->green(I)I
move-result v11
int-to-float v11, v11
mul-float v11, v11, v8
add-float/2addr v10, v11
.line 2175
invoke-static {v2}, Landroid/graphics/Color;->blue(I)I
move-result v2
int-to-float v2, v2
mul-float v2, v2, v7
.line 2176
invoke-static {v5}, Landroid/graphics/Color;->blue(I)I
move-result v5
int-to-float v5, v5
mul-float v5, v5, v8
add-float/2addr v2, v5
float-to-int v5, v9
float-to-int v7, v10
float-to-int v2, v2
.line 2177
invoke-static {v5, v7, v2}, Landroid/graphics/Color;->rgb(III)I
move-result v2
move v5, v2
.line 135
:cond_8b
iget v2, p0, Lcom/example/android/common/view/a;->i:I
add-int/lit8 v2, v2, 0x1
invoke-virtual {p0, v2}, Lcom/example/android/common/view/a;->getChildAt(I)Landroid/view/View;
move-result-object v2
.line 136
iget v7, p0, Lcom/example/android/common/view/a;->j:F
invoke-virtual {v2}, Landroid/view/View;->getLeft()I
move-result v8
add-int/2addr v8, v3
int-to-float v8, v8
mul-float v7, v7, v8
iget v8, p0, Lcom/example/android/common/view/a;->j:F
sub-float v9, v6, v8
int-to-float v4, v4
mul-float v9, v9, v4
add-float/2addr v7, v9
float-to-int v4, v7
.line 138
invoke-virtual {v2}, Landroid/view/View;->getRight()I
move-result v2
sub-int/2addr v2, v3
int-to-float v2, v2
mul-float v8, v8, v2
iget v2, p0, Lcom/example/android/common/view/a;->j:F
sub-float/2addr v6, v2
int-to-float v1, v1
mul-float v6, v6, v1
add-float/2addr v8, v6
float-to-int v1, v8
.line 142
:cond_b6
iget-object v2, p0, Lcom/example/android/common/view/a;->g:Landroid/graphics/Paint;
invoke-virtual {v2, v5}, Landroid/graphics/Paint;->setColor(I)V
int-to-float v7, v4
.line 144
iget v2, p0, Lcom/example/android/common/view/a;->a:I
sub-int v2, v0, v2
int-to-float v8, v2
int-to-float v9, v1
int-to-float v10, v0
iget-object v11, p0, Lcom/example/android/common/view/a;->g:Landroid/graphics/Paint;
move-object v6, p1
invoke-virtual/range {v6 .. v11}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V
:cond_c9
const/4 v2, 0x0
.line 149
iget v1, p0, Lcom/example/android/common/view/a;->e:I
sub-int v1, v0, v1
int-to-float v3, v1
invoke-virtual {p0}, Lcom/example/android/common/view/a;->getWidth()I
move-result v1
int-to-float v4, v1
int-to-float v5, v0
iget-object v6, p0, Lcom/example/android/common/view/a;->f:Landroid/graphics/Paint;
move-object v1, p1
invoke-virtual/range {v1 .. v6}, Landroid/graphics/Canvas;->drawRect(FFFFLandroid/graphics/Paint;)V
return-void
.end method