zoukankan      html  css  js  c++  java
  • 如何去掉(隐藏)系统的StatusBar(状态栏)

         在定制TV版本中,经常需要去掉StatusBar的需求,那么如何更好更方便的去掉StatusBar呢? 
     
         StatusBar是Android系统中重要的组成部分,可以看到一些提醒图标已经通过它可以下拉出通知提醒和快捷设置,整个的代码在工程SystemUI中。
         
         一拿到最简单方法当然是直接删除SystemUI.apk,但是如果真的这样做的话,系统将会无法显示墙纸。这是因为ImageWallpaper这个显示墙纸的服务也在SystemUI中。参考SystemUI的manifest.xml文件,里面还有好多服务需要运行,所以直接去掉这个apk的做法肯定是不行的。
         
         如果不能去掉只能去看真正的StatusBar的代码在哪里了,在整个里面主要涉及到三个类:
         这三个类很有意思的相互关联,看类的名称可以看出,一个是控制类(PhoneStatusBar),另外两个是界面类。其中 StatusBarWindowView是整个View,包含状态栏(PhoneStatusbarView)和底下的展开(PannelHodler),通过super_status_bar.xml,我们可以看出之际的结构如下:
         再参考代码,我们可以画出整个操作StatusBar的流程如下:
         
         回到刚才我们的问题,如果要屏蔽StatusBar,我们只要不让StaatusBarWindowView 显示就可以了,所以我们只要找到
        代码
                   mStatusBarWindow.setVisibility(View.GONE);
         至此,对于StatusBar的分析结束。
     
  • 相关阅读:
    [SAP HANA] HANA 安装更新工具HDBLCM
    [SAP BASIS] [TMS] TMS相关的程序和后台作业
    [sap basis] [authorization trace] Disable/enable authorization trace
    IEEE 802.11 标准列表
    802.11 wireless 七
    802.11 wireless 六
    802.11 wireless 五
    802.11 wireless 四
    802.11 wireless 三
    802.11 wireless 二
  • 原文地址:https://www.cnblogs.com/jianggest/p/StatusBar.html
Copyright © 2011-2022 走看看