有效获取状态栏(StatusBar)高度

Class<?> c = null;
Object obj = null;
Field field = null;
int x = 0, sbar = 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());
    sbar = getResources().getDimensionPixelSize(x);
} catch (Exception e1) {
    loge("get status bar height fail");
    e1.printStackTrace();
}
时间: 2024-08-14 03:10:25

有效获取状态栏(StatusBar)高度的相关文章

Android下获取状态栏的高度

/** <!-- lang: java --> * <!-- lang: java --> * @param activity <!-- lang: java --> * @return > 0 success; <= 0 fail <!-- lang: java --> */ <!-- lang: java --> public static int getStatusHeight(Activity activity){ <!

Android里获取状态栏的高度

public int getStatusBarHeight() { int result = 0; int resourceId = mainActionView.getContext().getResources().getIdentifier("status_bar_height", "dimen", "android"); if (resourceId > 0) { result = mainActionView.getContext

【转】Andorid获取状态栏高度

在应用开发中,有时我们需要用代码计算布局的高度,可能需要减去状态栏(status bar)的高度.状态栏高度定义在Android系统尺寸资源中status_bar_height,但这并不是公开可直接使用的,例如像通常使用系统资源那样android.R.dimen.status_bar_height.但是系统给我们提供了一个Resource类,通过这个类我们可以获取资源文件.下边是在Activity中获取的方法 public int getStatusBarHeight() { int resul

Andorid获取状态栏高度

在应用开发中,有时我们需要用代码计算布局的高度,可能需要减去状态栏(status bar)的高度.状态栏高度定义在Android系统尺寸资源中status_bar_height,但这并不是公开可直接使用的,例如像通常使用系统资源那样android.R.dimen.status_bar_height.但是系统给我们提供了一个Resource类,通过这个类我们可以获取资源文件.下边是在Activity中获取的方法 ? 1 2 3 4 5 6 7 8 public int getStatusBarHe

获取手机状态栏的高度

/** * 获取状态栏的高度 * @param context * @return */private static int getStatusHeight(Context context){ int statusHeight = 0; Rect localRect = new Rect(); ((Activity) context).getWindow().getDecorView().getWindowVisibleDisplayFrame(localRect); statusHeight

透明状态栏(StatusBar)的全适配

透明状态栏(StatusBar)的全适配 状态栏指定android手机上顶部显示手机状态信息的位置. 透明状态栏是android 自4.4开始新加入的功能,他可以是状态栏根据我们自己想要的颜色进行定义,使titleBar能够和状态栏融为一体,增加沉浸感. 实现中遇到的阻碍 因为状态栏是在4.4加入的,所以在4.4以前的系统上无法实现.现在世面上的手机android4.4一下的占比不是很大,所以不是太影响. 网上有很多关于透明状态栏实现的技术博客,以及我之前的博客透明状态栏(沉浸式状态栏)中,实现

Android获取actionbar高度和StatusBar高度的方法

ActionBar: getActionBar().getHeight(); StatusBar: /** * 获取状态栏高度 * * @return */ public static int getStatusBarHeight(Context context) { Class<?> c = null; Object obj = null; java.lang.reflect.Field field = null; int x = 0; int statusBarHeight = 0; tr

iOS获取状态栏和导航栏尺寸(宽度和高度)

iPhone开发当中,有时需要获取状态栏和导航栏高度.宽度信息,方便布局其他控件.下面介绍一下如何获取这些信息: // 状态栏(statusbar) CGRect rectStatus = [[UIApplication sharedApplication] statusBarFrame]; NSLog(@"status width - %f", rectStatus.size.width); // 宽度 NSLog(@"status height - %f", r

【转】iPhone获取状态栏和导航栏尺寸(宽度和高度)

原文网址:http://blog.csdn.net/chadeltu/article/details/42708605 iPhone开发当中,有时需要获取状态栏和导航栏高度.宽度信息,方便布局其他控件.下面介绍一下如何获取这些信息: [objc] view plain copy // 状态栏(statusbar) CGRect rectStatus = [[UIApplication sharedApplication] statusBarFrame]; NSLog(@"status width