package io.github.mayubao.kuaichuan.utils; import android.annotation.TargetApi; import android.app.Activity; import android.os.Build; import android.view.Window; import android.view.WindowManager; /** * 状态栏工具类 * * Created by mayubao on 2016/11/26. * Contact me 345269374@qq.com */ public class StatusBarUtils { public static void setWindowStatusBarColor(Activity activity, int colorResId) { try { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { Window window = activity.getWindow(); // window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); // clear FLAG_TRANSLUCENT_STATUS flag: window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); // add FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS flag to the window window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); window.setStatusBarColor(activity.getResources().getColor(android.R.color.transparent)); //底部导航栏 //window.setNavigationBarColor(activity.getResources().getColor(colorResId)); } } catch (Exception e) { e.printStackTrace(); } } /** * 设置StatusBar 和 BottomBar 透明 * 需要在 setContentView(R.layout.xx) 的布局文件设置 * android:fitsSystemWindows="true" * android:background="@color/colorPrimary" * @param activity */ @TargetApi(Build.VERSION_CODES.KITKAT) public static void setStatuBarAndBottomBarTranslucent(Activity activity){ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { Window window = activity.getWindow(); // Translucent status bar window.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS, WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); // Translucent navigation bar window.setFlags( WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION); } } }