AutoSplitTextView.smali

.class public Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;
.super Lcom/imo/xui/widget/textview/XTextView;
.source "SourceFile"


# instance fields
.field private a:Z


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

    .line 22
    invoke-direct {p0, p1, p2}, Lcom/imo/xui/widget/textview/XTextView;-><init>(Landroid/content/Context;Landroid/util/AttributeSet;)V

    return-void
.end method


# virtual methods
.method public onDraw(Landroid/graphics/Canvas;)V
    .registers 13

    .line 27
    invoke-super {p0, p1}, Lcom/imo/xui/widget/textview/XTextView;->onDraw(Landroid/graphics/Canvas;)V

    .line 28
    iget-boolean p1, p0, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->a:Z

    if-nez p1, :cond_68

    .line 1034
    invoke-virtual {p0}, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->getText()Ljava/lang/CharSequence;

    move-result-object p1

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

    move-result-object p1

    .line 1035
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_68

    const/4 v0, 0x1

    .line 1039
    iput-boolean v0, p0, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->a:Z

    .line 1041
    invoke-virtual {p0}, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->getPaint()Landroid/text/TextPaint;

    move-result-object v1

    .line 1042
    invoke-virtual {p0}, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->getWidth()I

    move-result v2

    invoke-virtual {p0}, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->getPaddingLeft()I

    move-result v3

    sub-int/2addr v2, v3

    invoke-virtual {p0}, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->getPaddingRight()I

    move-result v3

    sub-int/2addr v2, v3

    int-to-float v2, v2

    .line 1044
    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    .line 1045
    invoke-virtual {p1}, Ljava/lang/String;->length()I

    move-result v4

    const/4 v5, 0x0

    const/4 v6, 0x0

    const/4 v7, 0x0

    :goto_37
    if-ge v6, v4, :cond_65

    .line 1046
    invoke-virtual {p1, v6}, Ljava/lang/String;->charAt(I)C

    move-result v8

    .line 1048
    invoke-static {v8}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;

    move-result-object v9

    const-string v10, "\n"

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

    move-result v9

    if-nez v9, :cond_63

    int-to-float v7, v7

    .line 1051
    invoke-static {v8}, Ljava/lang/String;->valueOf(C)Ljava/lang/String;

    move-result-object v9

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

    move-result v9

    add-float/2addr v7, v9

    float-to-int v7, v7

    int-to-float v9, v7

    cmpg-float v9, v9, v2

    if-gtz v9, :cond_5d

    .line 1053
    invoke-virtual {v3, v8}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;

    goto :goto_63

    .line 1055
    :cond_5d
    invoke-virtual {v3, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

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

    const/4 v7, 0x0

    :cond_63
    :goto_63
    add-int/2addr v6, v0

    goto :goto_37

    .line 1061
    :cond_65
    invoke-virtual {p0, v3}, Lcom/imo/android/imoim/imoout/recharge/buyhistory/AutoSplitTextView;->setText(Ljava/lang/CharSequence;)V

    :cond_68
    return-void
.end method