我已经使用导航视图添加了导航抽屉到片段,我添加了app compat工具栏。我现在遇到的问题是显示小状态栏,显示工具栏上方的推送通知,时间等。
此图显示当前情况:
我希望它显示的是下图所示的红色部分:
这是片段
中'onCreateView'方法中的代码 @Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.recyclerview_fragment,container,false);
if (isAdded()) view.setBackgroundColor(getResources().getColor(R.color.window_background));
getActivity().setTitle("Choose category");
mDrawerLayout = (DrawerLayout) view.findViewById(R.id.drawer_layout);
NavigationView navigationView = (NavigationView) view.findViewById(R.id.navigation_view);
if (navigationView != null) {
setupDrawerContent(navigationView);
}
// Set a Toolbar to replace the ActionBar.
Toolbar toolbar = (Toolbar) view.findViewById(R.id.toolbar);
((AppCompatActivity)getActivity()).setSupportActionBar(toolbar);
// set up the hamburger icon to open and close the drawer
mDrawerToggle = new ActionBarDrawerToggle(getActivity(), mDrawerLayout, toolbar, R.string.open,R.string.close);
mDrawerLayout.setDrawerListener(mDrawerToggle);
mDrawerToggle.syncState();
return view;
}
这是该片段的XML视图:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!--Main content view-->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearLayout"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:fitsSystemWindows="true"
android:minHeight="?attr/actionBarSize"
app:theme="@style/AppThemeNoActionBar"
android:background="@color/primary"
android:textColor="@color/main_white"
android:elevation="8dp">
</android.support.v7.widget.Toolbar>
<android.support.v7.widget.RecyclerView
android:id="@+id/recyclerview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingLeft="0dp"
android:paddingRight="0dp"
android:scrollbars="vertical"
android:scrollbarStyle="outsideOverlay"/>
</LinearLayout>
<!--Nav drawer-->
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/drawer"/>
</android.support.v4.widget.DrawerLayout>
这是该视图的styles.xml文件中的应用主题:
<resources>
<style name="AppThemeNoActionBar" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="android:windowActionBar">false</item>
<item name="android:windowBackground">@color/window_background</item>
</style>
</resources>
如何在上方红色突出显示的工具栏/操作栏上方显示状态栏?
答案 0 :(得分:0)
好的,我想出了这个,这实际上是我的一个愚蠢的错误。我忘了在AndroidManifest.xml文件中设置主题。我只需要补充一下:
<activity
android:name=".activities.GameActivity"
android:theme="@style/NavDrawerTheme"
android:label="@string/app_name" >
</activity>