Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 關於android開發 >> Android開發實現透明通知欄,android通知欄

Android開發實現透明通知欄,android通知欄

編輯:關於android開發

Android開發實現透明通知欄,android通知欄


這個特性是andorid4.4支持的,最少要api19才可以使用,也就是說如果Android的機子是低於4.4,沉浸通知欄是沒有效果的。下面介紹一下使用的方法,非常得簡單。

 /**
     * 設置通知欄 這個方法在onCreate()實現,如果是在父類的onCreate()中添加,即使所有繼承了該父類都會有沉浸通知欄。
     */

public void initSystemBar() {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
            setTranslucentStatus(true);
            SystemBarTintManager tintManager = new SystemBarTintManager(this);
            tintManager.setStatusBarTintEnabled(true);
            tintManager.setStatusBarTintResource(R.color.red);
        }
    }
    
    /**
     * 設置通知欄的狀態
     * @param on
     */
    @SuppressLint("InlinedApi")
    private void setTranslucentStatus(boolean on) {  
        Window win = this.getWindow();  
        WindowManager.LayoutParams winParams = win.getAttributes();  
        final int bits = WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS;  
        if (on) {  
            winParams.flags |= bits;  
        } else {  
            winParams.flags &= ~bits;  
        }  
        win.setAttributes(winParams);  
    }

在最後在布局文件中添加:android:fitsSystemWindows="true"

即可實現。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved