I am trying to learn navigation box implementations in Android.
In one action, I made a navigation box under the status bar (transparent) and above the application bar, and everything works fine. (left screenshot)
In another action in the same application, I am trying to create a navigation box that is pulled under the application bar. But here the status bar turns gray for some reason (regardless of whether the navigation box is open or closed) (right screenshot). Other than that, everything seems beautiful.
Below is a screenshot:

Green Nav Drawer is a fragment.
I want to know how to make the status normal (a darker shade. Please remember, if I click on the icon of this double arrow in the application panel, it will transfer me to another activity that contains another Nav Drawer, which works like the one in Material Design (full height of the screen and under the transparent status bar.) This is shown on the left side of the screenshot.
Below is the code:
MainActivity.java:
public class MainActivity extends ActionBarActivity { Toolbar toolbar; DrawerLayout xDrawerLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_alt); toolbar = (Toolbar) findViewById(R.id.app_bar); setSupportActionBar(toolbar); getSupportActionBar().setDisplayShowHomeEnabled(true); xDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); xDrawerLayout.setStatusBarBackgroundColor(getResources().getColor(R.color.primary_dark)); NavDrawerFragment mfragment = (NavDrawerFragment) getFragmentManager().findFragmentById(R.id.nav_drawer_fragment); mfragment.SetUp(xDrawerLayout, toolbar, R.id.nav_drawer_fragment); } ...
activity_alt.xml:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" android:orientation="vertical"> <include android:id="@+id/app_bar" layout="@layout/app_bar" /> <android.support.v4.widget.DrawerLayout android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent"> <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="@string/hello_world" /> </RelativeLayout> <fragment android:id="@+id/nav_drawer_fragment" android:name="com.rt.droid.mattest.NavDrawerFragment" android:layout_width="@dimen/nav_drawer_width" android:layout_height="match_parent" android:layout_gravity="start" tools:layout="@layout/fragment_nav_drawer" /> </android.support.v4.widget.DrawerLayout> </LinearLayout>
NavDrawerFragment.java:
public class NavDrawerFragment extends Fragment { private ActionBarDrawerToggle mDrawerToggle; private DrawerLayout mDrawerLayout; public DrawerLearner yDrawerLearner; public NavDrawerFragment() { // Required empty public constructor } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment View fView = inflater.inflate(R.layout.fragment_nav_drawer, container, false); //fView.setFitsSystemWindows(true); fView.setBackgroundColor(getResources().getColor(R.color.accent)); return fView; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } public void SetUp(DrawerLayout drawerLayout, Toolbar toolbar, int frag_id) { this.mDrawerLayout = drawerLayout; View drawerFrag = getActivity().findViewById(frag_id); mDrawerToggle = new ActionBarDrawerToggle(getActivity(), mDrawerLayout, toolbar, R.string.drawer_open, R.string.drawer_close) { @Override public void onDrawerOpened(View drawerView) { super.onDrawerOpened(drawerView); getActivity().invalidateOptionsMenu(); } @Override public void onDrawerClosed(View drawerView) { super.onDrawerClosed(drawerView); getActivity().invalidateOptionsMenu(); } }; yDrawerLearner = new DrawerLearner(mDrawerLayout, drawerFrag, getActivity()); yDrawerLearner.execute(); this.mDrawerLayout.setDrawerListener(mDrawerToggle); mDrawerLayout.setStatusBarBackgroundColor(getResources().getColor(R.color.primary_dark)); mDrawerLayout.post(new Runnable() { @Override public void run() { mDrawerToggle.syncState(); } }); } }
fragment_nav_drawer.xml:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.rt.droid.mattest.NavDrawerFragment"> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="@string/hello_blank_fragment" /> </FrameLayout>
app_bar.xml:
<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@color/primary" app:popupTheme="@style/AppTheme.PopupMenu" android:theme="@style/AppTheme.Toolbar"> </android.support.v7.widget.Toolbar>
styles.xml:
<resources> <style name="AppTheme" parent="AppTheme.Base"> </style> <style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar"> <item name="colorPrimary">@color/primary</item> <item name="colorPrimaryDark">@color/primary_dark</item> <item name="colorAccent">@color/accent</item> </style> <style name="AppTheme.Toolbar" parent="ThemeOverlay.AppCompat.Dark"> <item name="android:textColorPrimary">@color/primary_text</item> <item name="android:textColorSecondary">@color/accent</item> </style> <style name="AppTheme.PopupMenu" parent="ThemeOverlay.AppCompat.Dark"> <item name="android:background">@color/accent</item> </style> </resources>
styles.xml (V21):
<resources> <style name="AppTheme" parent="AppTheme.Base"> <item name="android:colorPrimary">@color/primary</item> <item name="android:colorPrimaryDark">@color/primary_dark</item> <item name="android:colorAccent">@color/accent</item> <item name="android:windowDrawsSystemBarBackgrounds">true</item> <item name="android:statusBarColor">@android:color/transparent</item> <item name="android:windowTranslucentStatus">true</item> </style> </resources>
Colors.xml (screenshot showing color swatches):

Note. I do not want to compromise styles, etc., which will not allow my other navigation box to work. In other words, I prefer a solution in which both types of navigation bar work as expected in the same application.
Please let me know if you need any information and I will edit if necessary. Edit: added app_bar.xml and .xml colors for clarity.