天天看點

Android 狀态欄沉浸式的實作

版權聲明:本文為部落客原創文章,轉載請注明出處http://blog.csdn.net/u013132758。 https://blog.csdn.net/u013132758/article/details/48557055

随着Android 系統的不斷更新,Android設計趨于簡單便捷,所有軟體的設計現在都趨于扁平化設計。像微軟的新出的Windows 10,google前不久出的Android M也就是Android 6.0系統的設計分格都是扁平化的。可能扯的有點遠了。

大家都看到從Android 4.4後,有好多APP,像QQ等都有沉浸式狀态欄,可能有讀者不知道什麼是沉浸式,看下圖就知道了。本文小編為大家介紹如何寫出沉浸式。

大家可以看到頂端系統欄和QQ狀态欄是一個顔色的

**

1.第一步 先修改對應界面的布局檔案

在xml檔案中添加如下代碼

android:clipToPadding="true"  
android:fitsSystemWindows="true"           

如果不加clipToPadding和fitsSystemWindows這兩個屬性,Activity中的内容會整體上移狀态欄高度的距離,狀态欄會将Activity内容遮住。

2.第二部 然後修改對應的Activity檔案

找到OnCreate方法,在oncreate方法中加入判斷SDK的版本是否大于4.4,隻有4.4以上才支援狀态欄沉浸。

代碼如下:

public class MainActivity extends Activity {  

    @SuppressLint("InlinedApi")  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  

        //判斷目前SDK版本号,如果是4.4以上,就是支援沉浸式狀态欄的  
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
            getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
        } 
    }  
}             

小編推薦一篇:小編感覺還不錯

小編推薦