Android中状态栏的隐藏

系统中状态栏的隐藏
定制系统的时候,想去掉系统中的状态栏,系统中的状态栏隐藏的可在framework中的SystemUI.apk中修改实现。
SystemUI.apk代码位于
RK2908/ics/frameworks/base/packages/SystemUI
设置状态栏不显示:
打开文件SystemUI/src/com/android/systemui/statusbar/tablet/TabletStatusBar.java
找到如下代码
460         final TabletStatusBarView sb = (TabletStatusBarView)View.inflate(
 461                 context, R.layout.status_bar, null);
 462         mStatusBarView = sb;

在代码之后加入如下一行
mStatusBarView.setVisibility(View.INVISIBLE);

重新编译得到SystemUI.apk
[email protected]:~/RK2908/ics/build$ source  envsetup.sh
[email protected]:~/RK2908/ics/frameworks/base/packages/SystemUI$  mm

得到的SystemUI.apk   位于out/target/product/rk29sdk/system/app/SystemUI.apk

将SystemUI.apk放在目标板 /system/app下;
如不重启系统的话,需杀掉com.android.systemui进程才会运行新的SystemUI.apk


Apk中状态栏的隐藏,全屏的实现
在开发中我们经常需要把我们的应用设置为全屏,这里介绍两种方法,一中是在代码中设置,另一种方法是在配置文件里改。
1. 在代码中设置:
package com.android.tutor;  
import android.app.Activity;  
import android.os.Bundle;  
import android.view.Window;  
import android.view.WindowManager;  
public class OpenGl_Lesson1 extends Activity {  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
       //去除title    
       requestWindowFeature(Window.FEATURE_NO_TITLE);    
        //去掉Activity上面的状态栏
       getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN ,      
                      WindowManager.LayoutParams. FLAG_FULLSCREEN);   
           
        setContentView(R.layout.main);  
    }  
}  
设置全屏的俩段代码必须在setContentView(R.layout.main) 之前,不然会报错。
2. 在配置文件里修改
关键此行:android:theme="@android:style/Theme.NoTitleBar.Fullscreen",如果想只是去除标题栏就后面不用加Fullscreen了,另外,如果想要整个应用都去除标题栏和状态栏,就把这句代码加到
<?xml version="1.0" encoding="utf-8"?>  
      package="com.android.tutor"  
      android:versionCode="1"  
      android:versionName="1.0">  
     
                          android:theme="@android:style/Theme.NoTitleBar.Fullscreen"  
                  android:label="@string/app_name">  
             
                 
                 
           
 
         
     
     
   
说明,用前者在我们应用运行后,会看到短暂的状态栏,然后才全屏,而第二种方法是不会有这种情况的,所以建议使用后者!

 

Android4.0隐藏状态栏:

hide statusbar
grep "status_bar_height" * -nR
将下面文件中关于status_bar_height定义的改为0dip.
android4.0/frameworks/base/core/res/res/values-large/dimens.xml
android4.0/frameworks/base/core/res/res/values-sw480dp/dimens.xml
android4.0/frameworks/base/core/res/res/values-sw600dp/dimens.xml
android4.0/frameworks/base/core/res/res/values/dimens.xml
android4.0/packages/apps/Launcher2/res/values-sw480dp/dimens.xml
android4.0/packages/apps/Launcher2/res/values-sw600dp/dimens.xml
android4.0/packages/apps/Launcher2/res/values/dimens.xml




 

更多相关文章

  1. android 使用AsyncHttpClient框架上传文件以及使用HttpURLConnec
  2. Android 文件的上传
  3. Android设备与外接U盘实现数据文件夹拷贝到android设备
  4. Android中音乐文件的信息详解【安卓源码解析二】
  5. Android APK反编译查看源码及资源文件
  6. Android系统定制之bootanimation.zip的制作
  7. Android studio 删除无用代码
  8. android ZygoteInit.java文件解析 从main(String args[])开始
  9. android 如何调用选择文件模块

随机推荐

  1. Android(安卓)基础回顾:Fragment 基础
  2. AndroidStudio2.2.3设置
  3. Android(安卓)Manifest.xml文件解析
  4. Android之MainActivity类
  5. Android(安卓)studio 多渠道打包(超简洁
  6. [转]Android(安卓)Test Auto Test Mu…
  7. 安卓 Activity(2) 四大启动方式
  8. android应用程序内存分析
  9. [置顶] android scrollview 滑动到顶端或
  10. Android中保存Activity的状态