411 lines
9.1 KiB
Smali
411 lines
9.1 KiB
Smali
.class public Lcom/codbking/widget/utils/UIAdjuster;
|
|
.super Ljava/lang/Object;
|
|
.source "UIAdjuster.java"
|
|
|
|
|
|
# direct methods
|
|
.method public constructor <init>()V
|
|
.locals 0
|
|
|
|
.line 35
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public static addViewIfNotNull(Landroid/view/ViewGroup;Landroid/view/View;)V
|
|
.locals 0
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
.line 71
|
|
invoke-virtual {p0, p1}, Landroid/view/ViewGroup;->addView(Landroid/view/View;)V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public static closeKeyBoard(Landroid/content/Context;)V
|
|
.locals 1
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
.line 37
|
|
instance-of v0, p0, Landroid/app/Activity;
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
.line 38
|
|
check-cast p0, Landroid/app/Activity;
|
|
|
|
invoke-static {p0}, Lcom/codbking/widget/utils/UIAdjuster;->closeKeyBoardInner(Landroid/app/Activity;)V
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method private static closeKeyBoardInner(Landroid/app/Activity;)V
|
|
.locals 2
|
|
|
|
const-string v0, "input_method"
|
|
|
|
.line 43
|
|
invoke-virtual {p0, v0}, Landroid/app/Activity;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
move-result-object v0
|
|
|
|
check-cast v0, Landroid/view/inputmethod/InputMethodManager;
|
|
|
|
.line 44
|
|
invoke-virtual {p0}, Landroid/app/Activity;->getCurrentFocus()Landroid/view/View;
|
|
|
|
move-result-object v1
|
|
|
|
if-eqz v1, :cond_0
|
|
|
|
invoke-virtual {p0}, Landroid/app/Activity;->getCurrentFocus()Landroid/view/View;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v1}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
|
|
|
|
move-result-object v1
|
|
|
|
if-eqz v1, :cond_0
|
|
|
|
.line 45
|
|
invoke-virtual {p0}, Landroid/app/Activity;->getCurrentFocus()Landroid/view/View;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {p0}, Landroid/view/View;->getWindowToken()Landroid/os/IBinder;
|
|
|
|
move-result-object p0
|
|
|
|
const/4 v1, 0x2
|
|
|
|
invoke-virtual {v0, p0, v1}, Landroid/view/inputmethod/InputMethodManager;->hideSoftInputFromWindow(Landroid/os/IBinder;I)Z
|
|
|
|
:cond_0
|
|
return-void
|
|
.end method
|
|
|
|
.method public static computeDIPtoPixel(Landroid/content/Context;F)F
|
|
.locals 0
|
|
|
|
if-nez p0, :cond_0
|
|
|
|
.line 81
|
|
invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
|
|
|
|
move-result-object p0
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
|
|
|
|
move-result-object p0
|
|
|
|
.line 82
|
|
:goto_0
|
|
invoke-virtual {p0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics;
|
|
|
|
move-result-object p0
|
|
|
|
.line 83
|
|
iget p0, p0, Landroid/util/DisplayMetrics;->density:F
|
|
|
|
mul-float/2addr p0, p1
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public static computeDynamicWidth(Landroid/widget/TextView;I)F
|
|
.locals 2
|
|
|
|
.line 93
|
|
new-instance v0, Landroid/graphics/Rect;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
|
|
|
|
.line 94
|
|
new-instance v1, Landroid/graphics/Paint;
|
|
|
|
invoke-direct {v1}, Landroid/graphics/Paint;-><init>()V
|
|
|
|
.line 95
|
|
invoke-static {p0, p1, v1, v0}, Lcom/codbking/widget/utils/UIAdjuster;->computeDynamicWidth(Landroid/widget/TextView;ILandroid/graphics/Paint;Landroid/graphics/Rect;)F
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public static computeDynamicWidth(Landroid/widget/TextView;ILandroid/graphics/Paint;Landroid/graphics/Rect;)F
|
|
.locals 3
|
|
|
|
.line 106
|
|
invoke-virtual {p0}, Landroid/widget/TextView;->getText()Ljava/lang/CharSequence;
|
|
|
|
move-result-object v0
|
|
|
|
check-cast v0, Ljava/lang/String;
|
|
|
|
.line 107
|
|
invoke-virtual {p0}, Landroid/widget/TextView;->getTextSize()F
|
|
|
|
move-result p0
|
|
|
|
.line 109
|
|
:goto_0
|
|
invoke-virtual {p2, p0}, Landroid/graphics/Paint;->setTextSize(F)V
|
|
|
|
const/4 v1, 0x0
|
|
|
|
.line 110
|
|
invoke-virtual {v0}, Ljava/lang/String;->length()I
|
|
|
|
move-result v2
|
|
|
|
invoke-virtual {p2, v0, v1, v2, p3}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
|
|
|
|
.line 111
|
|
invoke-virtual {p3}, Landroid/graphics/Rect;->width()I
|
|
|
|
move-result v1
|
|
|
|
if-le v1, p1, :cond_0
|
|
|
|
const/high16 v1, 0x3f800000 # 1.0f
|
|
|
|
sub-float/2addr p0, v1
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
return p0
|
|
.end method
|
|
|
|
.method public static computeStringWidth(Ljava/lang/String;F)I
|
|
.locals 3
|
|
|
|
.line 126
|
|
new-instance v0, Landroid/graphics/Rect;
|
|
|
|
invoke-direct {v0}, Landroid/graphics/Rect;-><init>()V
|
|
|
|
.line 127
|
|
new-instance v1, Landroid/graphics/Paint;
|
|
|
|
invoke-direct {v1}, Landroid/graphics/Paint;-><init>()V
|
|
|
|
.line 128
|
|
invoke-virtual {v1, p1}, Landroid/graphics/Paint;->setTextSize(F)V
|
|
|
|
.line 129
|
|
invoke-virtual {p0}, Ljava/lang/String;->length()I
|
|
|
|
move-result p1
|
|
|
|
const/4 v2, 0x0
|
|
|
|
invoke-virtual {v1, p0, v2, p1, v0}, Landroid/graphics/Paint;->getTextBounds(Ljava/lang/String;IILandroid/graphics/Rect;)V
|
|
|
|
.line 130
|
|
invoke-virtual {v0}, Landroid/graphics/Rect;->width()I
|
|
|
|
move-result p0
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public static getLanguage(Landroid/content/Context;)Z
|
|
.locals 2
|
|
|
|
.line 140
|
|
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {p0}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
|
|
|
|
move-result-object p0
|
|
|
|
.line 141
|
|
iget-object v0, p0, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
|
|
|
|
sget-object v1, Ljava/util/Locale;->TAIWAN:Ljava/util/Locale;
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
iget-object p0, p0, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
|
|
|
|
sget-object v0, Ljava/util/Locale;->TRADITIONAL_CHINESE:Ljava/util/Locale;
|
|
|
|
invoke-virtual {p0, v0}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
|
|
|
|
move-result p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const/4 p0, 0x0
|
|
|
|
return p0
|
|
|
|
:cond_1
|
|
:goto_0
|
|
const/4 p0, 0x1
|
|
|
|
return p0
|
|
.end method
|
|
|
|
.method public static getLocale(Landroid/content/Context;)Ljava/lang/String;
|
|
.locals 2
|
|
|
|
.line 182
|
|
invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
|
|
|
|
move-result-object p0
|
|
|
|
invoke-virtual {p0}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
|
|
|
|
move-result-object p0
|
|
|
|
.line 183
|
|
iget-object v0, p0, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
|
|
|
|
sget-object v1, Ljava/util/Locale;->TAIWAN:Ljava/util/Locale;
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
iget-object p0, p0, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
|
|
|
|
sget-object v0, Ljava/util/Locale;->TRADITIONAL_CHINESE:Ljava/util/Locale;
|
|
|
|
invoke-virtual {p0, v0}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
|
|
|
|
move-result p0
|
|
|
|
if-eqz p0, :cond_0
|
|
|
|
goto :goto_0
|
|
|
|
:cond_0
|
|
const-string p0, "en_US"
|
|
|
|
return-object p0
|
|
|
|
:cond_1
|
|
:goto_0
|
|
const-string p0, "zh_TW"
|
|
|
|
return-object p0
|
|
.end method
|
|
|
|
.method public static setListViewHeightBasedOnChildren(Landroid/widget/ListView;)I
|
|
.locals 5
|
|
|
|
.line 51
|
|
invoke-virtual {p0}, Landroid/widget/ListView;->getAdapter()Landroid/widget/ListAdapter;
|
|
|
|
move-result-object v0
|
|
|
|
const/4 v1, 0x0
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
return v1
|
|
|
|
:cond_0
|
|
move v2, v1
|
|
|
|
move v3, v2
|
|
|
|
.line 56
|
|
:goto_0
|
|
invoke-interface {v0}, Landroid/widget/ListAdapter;->getCount()I
|
|
|
|
move-result v4
|
|
|
|
if-ge v2, v4, :cond_1
|
|
|
|
const/4 v4, 0x0
|
|
|
|
.line 57
|
|
invoke-interface {v0, v2, v4, p0}, Landroid/widget/ListAdapter;->getView(ILandroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View;
|
|
|
|
move-result-object v4
|
|
|
|
.line 58
|
|
invoke-virtual {v4, v1, v1}, Landroid/view/View;->measure(II)V
|
|
|
|
.line 59
|
|
invoke-virtual {v4}, Landroid/view/View;->getMeasuredHeight()I
|
|
|
|
move-result v4
|
|
|
|
add-int/2addr v3, v4
|
|
|
|
add-int/lit8 v2, v2, 0x1
|
|
|
|
goto :goto_0
|
|
|
|
.line 61
|
|
:cond_1
|
|
invoke-virtual {p0}, Landroid/widget/ListView;->getLayoutParams()Landroid/view/ViewGroup$LayoutParams;
|
|
|
|
move-result-object v1
|
|
|
|
.line 62
|
|
invoke-virtual {p0}, Landroid/widget/ListView;->getDividerHeight()I
|
|
|
|
move-result v2
|
|
|
|
invoke-interface {v0}, Landroid/widget/ListAdapter;->getCount()I
|
|
|
|
move-result v0
|
|
|
|
add-int/lit8 v0, v0, -0x1
|
|
|
|
mul-int/2addr v2, v0
|
|
|
|
add-int/2addr v3, v2
|
|
|
|
invoke-virtual {p0}, Landroid/widget/ListView;->getPaddingTop()I
|
|
|
|
move-result v0
|
|
|
|
add-int/2addr v3, v0
|
|
|
|
invoke-virtual {p0}, Landroid/widget/ListView;->getPaddingBottom()I
|
|
|
|
move-result v0
|
|
|
|
add-int/2addr v3, v0
|
|
|
|
iput v3, v1, Landroid/view/ViewGroup$LayoutParams;->height:I
|
|
|
|
.line 63
|
|
iget v0, v1, Landroid/view/ViewGroup$LayoutParams;->height:I
|
|
|
|
.line 64
|
|
invoke-virtual {p0, v1}, Landroid/widget/ListView;->setLayoutParams(Landroid/view/ViewGroup$LayoutParams;)V
|
|
|
|
.line 65
|
|
invoke-virtual {p0}, Landroid/widget/ListView;->requestLayout()V
|
|
|
|
return v0
|
|
.end method
|