MutiAnimation.smali
.class public Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;
.super Landroid/view/animation/Animation;
.source "MutiAnimation.java"
# instance fields
.field debug:Z
.field list:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List",
"<",
"Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;",
">;"
}
.end annotation
.end field
.field view:Landroid/view/View;
# direct methods
.method public constructor <init>(Landroid/view/View;Ljava/util/List;)V
.registers 9
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/view/View;",
"Ljava/util/List",
"<",
"Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;",
">;)V"
}
.end annotation
.prologue
const/4 v1, 0x0
.line 22
invoke-direct {p0}, Landroid/view/animation/Animation;-><init>()V
.line 20
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->list:Ljava/util/List;
.line 23
if-nez p1, :cond_15
.line 24
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "MutiAnimation(), view can\'t be null"
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
.line 27
:cond_15
if-eqz p2, :cond_1d
invoke-interface {p2}, Ljava/util/List;->isEmpty()Z
move-result v0
if-eqz v0, :cond_25
.line 28
:cond_1d
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "MutiAnimation(), list can\'t be empty"
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
.line 31
:cond_25
iput-object p1, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->view:Landroid/view/View;
.line 32
iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->list:Ljava/util/List;
invoke-interface {v0, p2}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
.line 35
const/4 v0, 0x0
move v2, v1
move v3, v1
move v1, v0
:goto_30
iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->list:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-ge v1, v0, :cond_5a
.line 36
iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->list:Ljava/util/List;
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;
iget v4, v0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->startTime:F
.line 37
iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->list:Ljava/util/List;
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;
iget v0, v0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->endTime:F
.line 38
cmpl-float v5, v3, v4
if-lez v5, :cond_51
move v3, v4
.line 41
:cond_51
cmpg-float v4, v2, v0
if-gez v4, :cond_56
move v2, v0
.line 35
:cond_56
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_30
.line 46
:cond_5a
sub-float v0, v2, v3
float-to-long v0, v0
.line 47
invoke-virtual {p0, v0, v1}, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->setDuration(J)V
.line 48
return-void
.end method
# virtual methods
.method protected applyTransformation(FLandroid/view/animation/Transformation;)V
.registers 7
.prologue
.line 52
const/4 v0, 0x0
move v1, v0
:goto_2
iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->list:Ljava/util/List;
invoke-interface {v0}, Ljava/util/List;->size()I
move-result v0
if-ge v1, v0, :cond_22
.line 53
iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->list:Ljava/util/List;
invoke-interface {v0, v1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;
.line 54
if-nez v0, :cond_15
.line 61
:goto_14
return-void
.line 57
:cond_15
invoke-virtual {p0}, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->getDuration()J
move-result-wide v2
long-to-float v2, v2
mul-float/2addr v2, p1
.line 58
invoke-virtual {v0, v2}, Lcom/cleanmaster/hpsharelib/base/anim/ValueObject;->applyValueTime(F)F
.line 52
add-int/lit8 v0, v1, 0x1
move v1, v0
goto :goto_2
.line 60
:cond_22
iget-object v0, p0, Lcom/cleanmaster/hpsharelib/base/anim/MutiAnimation;->view:Landroid/view/View;
invoke-virtual {v0}, Landroid/view/View;->invalidate()V
goto :goto_14
.end method