`
iaiai
  • 浏览: 2196428 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

完美获取Android状态栏高度

 
阅读更多
需要获取状态栏高度的问题。

就像android后期版本,无法直接退出一样。找了一些方法来获取状态栏高度,结果都是为0.

还好,牛人是很多的,当时,找到一段代码,能够有效的获取状态栏的高度。特此记录,备忘,以及供大家参考。

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();
}
个人注:以下代码不能在onCreate里面使用,否则获取状态栏高度为0

Rect frame = new Rect();
getWindow().getDecorView().getWindowVisibleDisplayFrame(frame);

int statusBarHeight = frame.top;
分享到:
评论

相关推荐

    获取屏幕的像素数,密度,状态栏的高度等

    综上所述,Android开发者需要理解并掌握屏幕像素数、密度以及状态栏高度的获取方法,以便为用户提供更好的视觉体验和功能适配。在实际应用中,还需要注意各种设备间的差异,以确保应用在不同设备上表现一致。在...

    5种方法完美解决android软键盘挡住输入框方法详解

    - 当需要沉浸式状态栏且不需手动计算状态栏高度时,可以使用此属性。优点是简单易用,缺点是可能会重写其他View的padding,并且仅适用于Android 4.4及以上系统,全屏或沉浸式状态栏界面。 3. **方法三:自定义View...

    android ListView向上滑动隐藏标题,下拉显示标题栏,完美解决滑动出现的空白问题。

    在onScroll方法中获取滚动的距离,并根据这个距离调整标题栏的透明度或高度。 ```java listView.setOnScrollListener(new AbsListView.OnScrollListener() { @Override public void onScrollStateChanged...

    android 监听软键盘状态(弹起还是收起)

    这个值是用户可见区域的高度,不包括状态栏和导航栏。 ```java DisplayMetrics displayMetrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(displayMetrics); int rootHeight = ...

    Android ListView向上滑动隐藏标题,下拉显示标题栏,完美解决滑动出现的空白问题

    当用户滑动ListView时,会触发`onScroll()`方法,通过这个方法我们可以获取当前的滚动状态和位置。 2. **隐藏与显示标题栏**:在监听到滑动事件后,我们需要判断滑动的方向。如果用户上滑,我们就隐藏标题栏;如果...

    Android视频播放器 支持列表,完美切换全屏、小窗口的 .zip

    通过以上知识点的综合运用,可以创建一个高效、易用且具有高度定制性的Android视频播放器,满足用户在列表播放、全屏和小窗口模式下的需求。在实际开发过程中,还需要关注代码结构清晰、可维护性高以及遵循Android...

    上滑隐藏标题下拉显示

    在滚动事件中获取滚动距离,根据距离来调整标题栏的高度或者透明度。 4. **动画效果**:为了使隐藏和显示过程更平滑,可以使用Android的动画API(如ValueAnimator或ObjectAnimator)来添加过渡效果。通过设置动画的...

    WPS移动版5.2完美兼容安卓4.2新增多项功能.docx

    #### 二、完美兼容Android 4.2系统 - **兼容性**: WPS移动版5.2完全支持最新的Android 4.2操作系统,确保用户可以在任何支持该系统的设备上顺畅使用。 - **程序启动速度**: 对程序启动时间进行了优化,使得用户可以...

    6-绘图1

    9. **状态栏高度、ActionBar 高度** 这些高度在不同设备和Android版本中可能变化,需要通过代码动态获取,以便正确布局UI元素。 10. **常见屏幕尺寸** Android设备有各种尺寸,开发者需要考虑多种屏幕尺寸进行...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    Android 一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导开发 IOS 由苹果公司开发的移动操作系统 Webkit 一个开源的浏览器引擎,在手机上的...

    jwplayer-6.6

    6. **API接口**:JW Player提供了一套完善的JavaScript API,开发者可以通过API实现对播放器的全面控制,比如控制播放状态、获取播放信息、监听事件等。这为创建交互式和动态的视频体验提供了可能。 7. **元数据...

Global site tag (gtag.js) - Google Analytics