.class public Lcom/luck/picture/lib/tools/ScreenUtils; .super Ljava/lang/Object; .source "ScreenUtils.java" # direct methods .method public constructor ()V .registers 1 .line 14 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static dip2px(Landroid/content/Context;F)I .registers 2 .line 19 invoke-virtual {p0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object p0 invoke-virtual {p0}, Landroid/content/res/Resources;->getDisplayMetrics()Landroid/util/DisplayMetrics; move-result-object p0 iget p0, p0, Landroid/util/DisplayMetrics;->density:F mul-float/2addr p1, p0 const/high16 p0, 0x3f000000 # 0.5f add-float/2addr p1, p0 float-to-int p0, p1 return p0 .end method .method public static getScreenHeight(Landroid/content/Context;)I .registers 3 .line 30 new-instance v0, Landroid/util/DisplayMetrics; invoke-direct {v0}, Landroid/util/DisplayMetrics;->()V .line 31 move-object v1, p0 check-cast v1, Landroid/app/Activity; invoke-virtual {v1}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager; move-result-object v1 invoke-interface {v1}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display; move-result-object v1 invoke-virtual {v1, v0}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V .line 32 iget v0, v0, Landroid/util/DisplayMetrics;->heightPixels:I invoke-static {p0}, Lcom/luck/picture/lib/tools/ScreenUtils;->getStatusBarHeight(Landroid/content/Context;)I move-result p0 sub-int/2addr v0, p0 return v0 .end method .method public static getScreenWidth(Landroid/content/Context;)I .registers 2 .line 24 new-instance v0, Landroid/util/DisplayMetrics; invoke-direct {v0}, Landroid/util/DisplayMetrics;->()V .line 25 check-cast p0, Landroid/app/Activity; invoke-virtual {p0}, Landroid/app/Activity;->getWindowManager()Landroid/view/WindowManager; move-result-object p0 invoke-interface {p0}, Landroid/view/WindowManager;->getDefaultDisplay()Landroid/view/Display; move-result-object p0 invoke-virtual {p0, v0}, Landroid/view/Display;->getMetrics(Landroid/util/DisplayMetrics;)V .line 26 iget p0, v0, Landroid/util/DisplayMetrics;->widthPixels:I return p0 .end method .method public static getStatusBarHeight(Landroid/content/Context;)I .registers 4 .line 38 :try_start_0 const-string v0, "com.android.internal.R$dimen" invoke-static {v0}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class; move-result-object v0 .line 39 invoke-virtual {v0}, Ljava/lang/Class;->newInstance()Ljava/lang/Object; move-result-object v1 .line 40 const-string v2, "status_bar_height" invoke-virtual {v0, v2}, Ljava/lang/Class;->getField(Ljava/lang/String;)Ljava/lang/reflect/Field; move-result-object v0 .line 41 invoke-virtual {v0, v1}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/lang/Integer; invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I move-result v0 .line 42 invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v1 invoke-virtual {v1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v1 invoke-virtual {v1, v0}, Landroid/content/res/Resources;->getDimensionPixelSize(I)I move-result v0 :try_end_26 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_26} :catch_27 goto :goto_2c :catch_27 move-exception v0 .line 44 invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V const/4 v0, 0x0 :goto_2c if-nez v0, :cond_34 const/high16 v0, 0x41c80000 # 25.0f .line 46 invoke-static {p0, v0}, Lcom/luck/picture/lib/tools/ScreenUtils;->dip2px(Landroid/content/Context;F)I move-result v0 :cond_34 return v0 .end method