三步实现Android沉浸式状态栏的实现

1.本人封装一些baseActivity,所以就直接在onCreate中进行实现,整个项目下来全部沉浸式。
public class BaseActivity extends FragmentActivity implements IBaseView {

public static BaseActivity activity;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    activity = this;

    requestWindowFeature(Window.FEATURE_NO_TITLE);
    Window window = activity.getWindow();
    window.getDecorView().setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
        window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
        window.setStatusBarColor(Color.parseColor("#00000000"));
        window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR);
    }

    ViewGroup contentFrameLayout = (ViewGroup) findViewById(Window.ID_ANDROID_CONTENT);
    View parentView = contentFrameLayout.getChildAt(0);
    if (parentView != null && Build.VERSION.SDK_INT >= 14) {
        parentView.setFitsSystemWindows(true);
    }


}
@Override
protected void onResume() {
    super.onResume();
}
@Override
protected void onStop() {
    super.onStop();
}

@Override
protected void onPause() {
    super.onPause(); 
}

@Override
protected void onDestroy() {
    super.onDestroy();
}

}
2.样式Style,注意添加属性 true


3.在清单文件中引用,即可大功告成!!!

你可能感兴趣的:(三步实现Android沉浸式状态栏的实现)