亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

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

舞钢市| 汝阳县| 韩城市| 井研县| 六枝特区| 丹棱县| 崇明县| 巨鹿县| 松桃| 犍为县| 鹤岗市| 礼泉县| 和平县| 多伦县| 娄底市| 隆尧县| 江津市| 海林市| 云和县| 荆州市| 包头市| 泽州县| 新野县| 苍山县| 云浮市| 贵州省| 武山县| 故城县| 宣武区| 桑日县| 永胜县| 罗定市| 五大连池市| 延津县| 朝阳区| 渭南市| 莒南县| 萝北县| 石棉县| 集安市| 马关县|