防止状态栏在全屏活动中自动隐藏

时间:2016-02-07 09:42:54

标签: android overlay android-fullscreen android-statusbar

我希望状态栏透明并叠加在我的活动上,同时正常显示导航栏。

e.g. Status bar overlay in Google app


我已使用代码将活动设置为全屏:

getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
                WindowManager.LayoutParams.FLAG_FULLSCREEN);

上面的代码确实隐藏了状态栏,并且没有对导航栏进行任何更改 现在我需要知道如何设置状态栏以覆盖活动

从屏幕顶部向下滑动时,状态栏会重叠,但会自动隐藏。我希望它留在屏幕上。
有人能说出我是如何实现的?我知道这是可能的,因为谷歌应用程序正在使用它。

2 个答案:

答案 0 :(得分:0)

您可以将自定义主题设置为不同的活动布局。只需在styles.xml中添加一个新样式:

<style name="MY.ACTIVITY" parent="android:Theme" >
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowFullscreen">false</item>
</style>

将此样式添加到AndroidManifest.xml中的活动

以及您活动的onCreate()

int width = ViewGroup.LayoutParams.MATCH_PARENT;
int height = ViewGroup.LayoutParams.MATCH_PARENT;
getWindow().setLayout(width, height);

答案 1 :(得分:0)

试试这个:

  getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);