系统去掉 Android 4.4.2 的StatusBar和NavigationBar

转自http://blog.csdn.net/myarrow/article/details/25706781

1. System Bar简介

    在Android4.0 (API Level 14)及更高版本中,System Bar由Status Bar<位于顶部>和Navigation Bar<位于底部>组成。

    在Android的官方网站已经详细讲解了如何Hdie Status Bar和Navigation Bar。

   本文化讲述如何在系统中Hide Status Bar和Navigation Bar,使之永远不会出现。本文以Android 4.4.2为例。

   

    上图中的1为:StatusBar

    上图中的2为:NavigationBar


2. 系统Hide Status Bar

    frameworks/base/core/res/res/values/dimens.xml

   把  <dimen name="status_bar_height">25dip</dimen> 修改为<dimen name="status_bar_height">0dip</dimen>

3. 系统Hide Navigation Bar

       frameworks/base/packages/SystemUI/src/com/android/systemui/

         statusbar/phone/PhoneStatusBar.java

       在start函数中注释掉 "addNavigationBar();"

-------------------------------------

修改build.prop文件方法:

如果想全部隐藏虚拟按键,只需要在build.prop中增加qemu.hw.mainkeys=1即可。

----------------------------------------------------------------------------------------------------------------

1. 隐藏当前Activity标题栏

    在当前Activity中调用:this.requestWindowFeature(Window.FEATURE_NO_TITLE);

2. 隐藏当前Activity状态栏(Status Bar)

2.1 Android 4.0 and Lower

[java]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class MainActivity extends Activity {  
  2.   
  3.     @Override  
  4.     protected void onCreate(Bundle savedInstanceState) {  
  5.         super.onCreate(savedInstanceState);  
  6.         // If the Android version is lower than Jellybean, use this call to hide  
  7.         // the status bar.  
  8.         if (Build.VERSION.SDK_INT < 16) {  
  9.             getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,  
  10.                     WindowManager.LayoutParams.FLAG_FULLSCREEN);  
  11.         }  
  12.         setContentView(R.layout.activity_main);  
  13.     }  
  14.     ...  
  15. }  

2.2 Android 4.1 and Higher

[java]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. View decorView = getWindow().getDecorView();  
  2. // Hide the status bar.  
  3. int uiOptions = View.SYSTEM_UI_FLAG_FULLSCREEN;  
  4. decorView.setSystemUiVisibility(uiOptions);  
  5. // Remember that you should never show the action bar if the  
  6. // status bar is hidden, so hide that too if necessary.  
  7. ActionBar actionBar = getActionBar();  
  8. actionBar.hide();  

3. 隐藏当前Activity界面的导航栏(NavigationBar)

    在Android4.0及以后版本中,可通过以下方法隐藏NavigationBar

[java]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. View decorView = getWindow().getDecorView();  
  2. // Hide both the navigation bar and the status bar.  
  3. // SYSTEM_UI_FLAG_FULLSCREEN is only available on Android 4.1 and higher, but as  
  4. // a general rule, you should design your app to hide the status bar whenever you  
  5. // hide the navigation bar.  
  6. int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION  
  7.               | View.SYSTEM_UI_FLAG_FULLSCREEN;  
  8. decorView.setSystemUiVisibility(uiOptions);  


4. 隐藏所有Activity界面的标题栏

 修改AndroidManifest.xml 
 在application 标签中添加a
    android:theme="@android:style/Theme.NoTitleBar"

5. 隐藏所有Activity界面的TitleBar 和StatusBar 

  修改AndroidManifest.xml 
  在application 标签中添加 

  android:theme="@android:style/Theme.NoTitleBar.Fullscreen"


http://developer.android.com/training/system-ui/status.html#40

http://developer.android.com/training/system-ui/index.html


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值