我希望有一个全屏应用,隐藏onCreate
中的状态栏,然后在某个时候,当用户打开选项菜单时,我想显示状态栏。然后,当选项菜单关闭时,再次隐藏状态栏。
目前我无法实现这一点,因为状态栏的更改只能在向Activity添加内容之前完成,所以尝试这样做:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
getWindow().requestFeature(Window.FEATURE_NO_TITLE);
抛出此异常
09-01 12:37:19.415: E/AndroidRuntime(2737): java.lang.RuntimeException: Unable to pause activity {com.bla.blabla/com.bla.blabla.MainActivity}: android.util.AndroidRuntimeException: requestFeature() must be called before adding content
这可以实现吗?
编辑:我知道当你第一次制作代码时,必须在setContentView
之前调用代码,清楚得足够,我想知道它是否已经知道了当用户与应用程序交互时,可以在运行时稍后进行这些更改。
答案 0 :(得分:1)
尝试使用沉浸式全屏模式(4.4+版本)。阅读更多相关信息here。
答案 1 :(得分:0)
在 setContentView
之前调用setContentView(R.layout.activitylayout);
像
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
getWindow().requestFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activitylayout);