MainActivity中包含五個Fragment,可是隻要求HomeFragment實現沉浸式,其他Fragment不實現沉浸式,保持原來的模樣java
注意:僅Android21及其以上系統支持android
前提:沉浸式只能做用在Activity上!git
<!--more-->github
一、使MainAcitivity實現沉浸式:ide
StatusBarUtil.setStatusBarTransparent(activity);
二、 爲每個不須要實現沉浸式的Fragment頁面新增一個View:工具
<View android:id="@+id/view_status_bar" android:layout_width="match_parent" android:layout_height="0dp"/>
三、爲每個不須要實現沉浸式的Fragment實現新增View的高度和背景色:佈局
StatusBarUtil.setStatusViewAttr(view, activity);
topMargin
,實現Fragment頁面切換時沉浸一、使MainAcitivity實現沉浸式:spa
StatusBarUtil.setStatusBarTransparent(activity);
二、使默認第一個顯示的Fragment頁面實現沉浸式:code
StatusBarUtil.createStatusView(activity); StatusBarUtil.hideStatusView(activity, true);
三、使其它Fragment不實現沉浸式,在實現沉浸式效果的Fragment中加入下面代碼:xml
@Override public void onHiddenChanged(boolean hidden) { super.onHiddenChanged(hidden); if (hidden) { StatusBarUtil.hideStatusView(activity, false); } else { StatusBarUtil.hideStatusView(activity, true); } }
topMargin
的值,致使頁面有細微的滑動。還在搜索中......