我正在尝试实现此处显示的效果:尼克和男孩们的http://www.youtube.com/watch?v=6QHkv-bSlds&t=15m48s。我可以覆盖操作栏,但无法弄清楚如何将其扩展到状态栏。我还想知道他们如何管理导航栏后面的透明黑色背景(但这并不重要)。
任何帮助/建议将不胜感激,因为我目前不知道这是如何完成的(并且开始担心它可能只是一个图像而不是实际的实现)。
编辑:我知道如何使酒吧完全透明(这是简单的部分)!我不知道如何扩展操作栏背景以显示在现在半透明的状态栏后面
我正在尝试实现此处显示的效果:尼克和男孩们的http://www.youtube.com/watch?v=6QHkv-bSlds&t=15m48s。我可以覆盖操作栏,但无法弄清楚如何将其扩展到状态栏。我还想知道他们如何管理导航栏后面的透明黑色背景(但这并不重要)。
任何帮助/建议将不胜感激,因为我目前不知道这是如何完成的(并且开始担心它可能只是一个图像而不是实际的实现)。
编辑:我知道如何使酒吧完全透明(这是简单的部分)!我不知道如何扩展操作栏背景以显示在现在半透明的状态栏后面
我有同样的问题,发现了这个库:https ://github.com/jgilfelt/SystemBarTint
setupStatusBarView()
为窗户的装饰添加一个视图。这允许您稍后为此视图设置颜色/可绘制对象。
如果使用SystemBarTint库,以下将允许您将状态栏强制为指定颜色,然后您可以将其与操作栏的背景匹配:
SystemBarTintManager tintManager = new SystemBarTintManager(this);
tintManager.setStatusBarTintEnabled(true);
tintManager.setStatusBarTintColor(Color.parseColor("#DD000000"));
在这种情况下,您可以将操作栏的背景设置为:#DD000000
如Android 4.4 API中所述:
您现在可以使用新主题Theme.Holo.NoActionBar.TranslucentDecor和Theme.Holo.Light.NoActionBar.TranslucentDecor使系统栏部分半透明。通过启用半透明系统栏,您的布局将填充系统栏后面的区域,因此您还必须为您的布局中不应被系统栏覆盖的部分启用fitSystemWindows 。
如果您正在创建自定义主题,请将这些主题之一设置为父主题或在您的主题中包含windowTranslucentNavigation和windowTranslucentStatus样式属性。
在您的情况下(您需要 ActionBar),第二个选项 - 包括主题中的两个新属性 - 将为您提供半透明的导航和状态栏。
他们正在使用新的半透明系统栏功能(在 Android 4.4 及更高版本上)。
半透明系统条
您现在可以使用新主题 Theme.Holo.NoActionBar.TranslucentDecor 和 Theme.Holo.Light.NoActionBar.TranslucentDecor 使系统栏部分半透明。通过启用半透明系统栏,您的布局将填充系统栏后面的区域,因此您还必须为您的布局中不应被系统栏覆盖的部分启用 fitSystemWindows。
如果您正在创建自定义主题,请将这些主题之一设置为父主题或在您的主题中包含 windowTranslucentNavigation 和 windowTranslucentStatus 样式属性。