-2
我试图在导航抽屉里面的内容框架上设置透明状态栏。我使用android studio上的模板创建应用程序。当导航抽屉没有打开时,我需要使状态栏变为透明状态,这样我的工具栏背景就会被绘制在背后。棒棒糖在导航抽屉的内容框架上使状态栏透明
这一个: This One What I mean
没有这一项,因为它已经透明: Not this one
我试图在导航抽屉里面的内容框架上设置透明状态栏。我使用android studio上的模板创建应用程序。当导航抽屉没有打开时,我需要使状态栏变为透明状态,这样我的工具栏背景就会被绘制在背后。棒棒糖在导航抽屉的内容框架上使状态栏透明
这一个: This One What I mean
没有这一项,因为它已经透明: Not this one
我其实是有与此相关的是由于一些自定义的渲染与视差效果的问题......总之,你可以只设置在状态栏背景色onDrawerClosed(View drawerView)
,然后打开抽屉时将其设置回透明:
public class WindowHelper {
public static void setColoredStatusBar(Activity activity){
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
Window window = activity.getWindow();
window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.setStatusBarColor(activity.getResources().getColor(R.color.secondary_color));
}
}
public static void setTranslucentStatusBar(Activity activity){
if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
Window window = activity.getWindow();
window.clearFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
}
}
}
小号o对你来说,它会像这样:
@Override
public void onDrawerClosed(View drawerView) {
WindowHelper.setColoredStatusBar(activity);
}
也许它的小姐理解。我不想让状态栏打开时着色。图像在“这一个”satus酒吧是与工具栏不同的颜色,我想要做的就是使状态栏透明,所以我的工具栏的颜色显示在它后面的状态栏和状态栏得到相同的绘制 –
状态栏当NavigationDrawer打开时已经是透明的。如果你看到最右边的一面,你可以看到你的内容视图在它背后仍然有相同的标签。您看到的效果是,您的NavigationDrawer内容实际上位于透明状态栏后面,因为它的视图具有fitsSystemWindows =“true”属性。如果您从内容视图和NavigationDrawer中移除该属性,它将实际将所有内容放置在状态栏下方。 – Guardanis