Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Copyright (C) 2014 Jay.
- *
- * All Rights Reserved.
- */
- package com.tryear.jandroid.lib.util;
- import android.app.Activity;
- import android.content.Context;
- import android.content.res.Resources;
- import android.graphics.Rect;
- import android.util.DisplayMetrics;
- import android.util.TypedValue;
- import com.jay.android.lib.res.ResourcesUtils;
- /**
- * Description
- *
- * @author Jay, created by Jay on 2014-01-22.
- */
- public class DisplayUtils {
- private static final String TAG = "DisplayUtils";
- private static final boolean LOCAL_DEBUG = true;
- public static String dump(Context context) {
- DisplayMetrics displaysMetrics = context.getResources().getDisplayMetrics();
- String info = displaysMetrics.toString() + ", densityDpi=" + displaysMetrics.densityDpi;
- return info;
- }
- /**
- * retrieve Display Metrics
- *
- * @param context
- * @return
- */
- public static DisplayMetrics getDisplayMetrics(Context context) {
- return displaysMetrics = context.getResources().getDisplayMetrics();
- }
- public static float getDisplayWidth(Context context) {
- DisplayMetrics displaysMetrics = context.getResources().getDisplayMetrics();
- return displaysMetrics.widthPixels;
- }
- public static float getDisplayHeight(Context context) {
- DisplayMetrics displaysMetrics = context.getResources().getDisplayMetrics();
- return displaysMetrics.heightPixels;
- }
- public static int getStatusBarHeight1(Context context) {
- int statusBarHeight = 0;
- try {
- Rect frame = new Rect();
- Activity activity = (Activity) context;
- activity.getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);
- statusBarHeight = frame.top;
- return statusBarHeight;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return statusBarHeight;
- }
- public static int getStatusBarHeight2(Context context) {
- int statusBarHeight = 0;
- Class<?> c = null;
- Object obj = null;
- java.lang.reflect.Field field = null;
- try {
- c = Class.forName("com.android.internal.R$dimen");
- obj = c.newInstance();
- field = c.getField("status_bar_height");
- int x = Integer.parseInt(field.get(obj).toString());
- statusBarHeight = context.getResources().getDimensionPixelSize(x);
- return statusBarHeight;
- } catch (Exception e) {
- e.printStackTrace();
- }
- return statusBarHeight;
- }
- public static int getStatusBarHeight(Context context) {
- int statusBarHeight = 0;// 25 dip
- int resourceId = context.getResources().getIdentifier("status_bar_height", "dimen", "android");
- if (resourceId > 0) {
- statusBarHeight = getResources().getDimensionPixelSize(resourceId);
- }
- return statusBarHeight;
- }
- public static int getNavigationBarHeight(Context context) {// 48 dip
- Resources resources = context.getResources();
- int resourceId = resources.getIdentifier("navigation_bar_height",
- "dimen", "android");
- if (resourceId > 0) {
- return resources.getDimensionPixelSize(resourceId);
- }
- return 0;
- }
- public int getActionBarHeight(Context context) {
- int actionBarHeight = 0; // 48 dip
- TypedValue tv = new TypedValue();
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
- if (context.getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true)) {
- actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data, context.getResources().getDisplayMetrics());
- }
- } else {
- actionBarHeight = TypedValue.complexToDimensionPixelSize(tv.data, context.getResources().getDisplayMetrics());
- }
- return actionBarHeight;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement