91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android分享筆記(1) 獲取屏幕尺寸,包括狀態欄

發布時間:2020-07-12 08:24:59 來源:網絡 閱讀:1237 作者:elyar007 欄目:移動開發

一大波干貨來襲,屏幕尺寸各種獲得,狀態欄尺寸可正確獲得,親測。

package com.elyar.app.util.measure;

import java.lang.reflect.Field;
import android.app.Activity;
import android.util.DisplayMetrics;
public class DisplayMeasure {
 /**
  * Note:個人經驗不服來辯<br>
  * 只有activity可以使用getWindowManager,否則應該使用<br>
  * Context.getResources().getDisplayMetrics()來獲取.<br>
  * 
  * @author ElyarAnwar 2016-1-29 21:24 Aksu
  * 
  */
 public DisplayMeasure() {
 
 }
 
 
 /**
  * 獲取屏幕尺寸,單位為像素
  * @param context Activity的上下文
  * @return 屏幕寬度 單位PX
  */
 public static int getScreenWidthPixel(Activity context){
  DisplayMetrics outMetrics = new DisplayMetrics();
  context.getWindowManager().getDefaultDisplay().getMetrics(outMetrics);
  int widthPixels = outMetrics.widthPixels;
  return widthPixels;
 }
 
 /**
  * 獲取屏幕尺寸,單位為像素
  * @param context Activity的上下文
  * @return 屏幕高度 單位PX
  */
 public static int getScreenHeightPixel(Activity context){
  DisplayMetrics outMetrics = new DisplayMetrics();
  context.getWindowManager().getDefaultDisplay().getMetrics(outMetrics);
  int heightPixels = outMetrics.heightPixels;
  return heightPixels;
 }
 
 /**
  * 獲取屏幕尺寸,單位為dp
  * @param context Activity的上下文
  * @return 屏幕寬度 單位Dp
  */
 public static int getScreenWidthInDp(Activity context){
  DisplayMetrics outMetrics = new DisplayMetrics();
  context.getWindowManager().getDefaultDisplay().getMetrics(outMetrics);
  int widthDp = outMetrics.widthPixels;
  return ChangeUnits.px2dp(context, widthDp);//將PX轉換成Dp
 }
 
 /**
  * 獲取屏幕尺寸,單位為dp
  * @param context Activity的上下文
  * @return 屏幕高度 單位Dp
  */
 public static int getScreenHeightInDp(Activity context){
  DisplayMetrics outMetrics = new DisplayMetrics();
  context.getWindowManager().getDefaultDisplay().getMetrics(outMetrics);
  int heightDp = outMetrics.heightPixels;
  return ChangeUnits.px2dp(context, heightDp);
 }
 
 
 /**
  * 獲取狀態欄高度
  * @param context 上下文
  * @return 狀態欄高度 單位像素
  */
 public static int getStatusBarHeightPixel(Activity context){ 
        Class<?> c = null; 
        Object obj = null; 
        Field field = null; 
        int x = 0, statusBarHeight = 0; 
        try { 
            c = Class.forName("com.android.internal.R$dimen"); 
            obj = c.newInstance(); 
            field = c.getField("status_bar_height"); 
            x = Integer.parseInt(field.get(obj).toString()); 
            statusBarHeight = context.getResources().getDimensionPixelSize(x);  
        } catch (Exception e1) { 
            e1.printStackTrace(); 
        }  
        return statusBarHeight; 
    }
 
 
 /**
  * 獲取狀態欄高度
  * @param context 上下文
  * @return 狀態欄高度 單位dp
  */
 public static int getStatusBarHeightInDp(Activity context){ 
        Class<?> c = null; 
        Object obj = null; 
        Field field = null; 
        int x = 0, statusBarHeight = 0; 
        try { 
            c = Class.forName("com.android.internal.R$dimen"); 
            obj = c.newInstance(); 
            field = c.getField("status_bar_height"); 
            x = Integer.parseInt(field.get(obj).toString()); 
            statusBarHeight = context.getResources().getDimensionPixelSize(x);  
        } catch (Exception e1) { 
            e1.printStackTrace(); 
        }  
        return ChangeUnits.px2dp(context, statusBarHeight); 
    }
}

 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江源县| 罗城| 靖安县| 嵊州市| 郴州市| 山丹县| 三河市| 泽库县| 论坛| 八宿县| 柘荣县| 和平区| 麻阳| 利津县| 雅安市| 镇雄县| 称多县| 三江| 巴青县| 兴海县| 康定县| 安西县| 苍溪县| 双流县| 九江县| 吉林市| 迭部县| 宁远县| 四子王旗| 岐山县| 梓潼县| 北票市| 堆龙德庆县| 江陵县| 德令哈市| 天水市| 永善县| 沧源| 望奎县| 申扎县| 寻甸|