在我的应用程序中,我正在使用canvas。我在画布上画画。我把帆布颜色变成了白色。当我的应用程序打开时,画布与上面的状态栏一起可见。 但我希望我的画布应该采取全屏幕。意味着当我运行该应用程序而不是标题栏时,通知状态栏应该消失(bcz我正在使用一些自定义标题栏) 我怎么能这样做?
通过使用下面的代码,我给了自定义标题,
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);
现在我正在尝试使用活动中的以下代码隐藏状态栏 -
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
和AndroidManifest.xml
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
但它表明力量接近。 给我一个怎么做的方法?
答案 0 :(得分:3)
删除行
就足够了 requestWindowFeature(Window.FEATURE_NO_TITLE);
但是如果你想要全屏显示(没有动作栏)也要写
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_location_eb);
答案 1 :(得分:1)
设置Window.FEATURE_CUSTOM_TITLE
后,您无法使用Theme.NoTitleBar
。只使用这个主题就足够了。不要在代码中设置所有这些标志。
编辑:似乎我误解了你的问题。我仔细阅读了它,现在我看到你在询问Android 2.x及其通知栏。您的onCreate()
方法应如下所示:
public void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.name);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
您不得为此活动设置Theme.NoTitleBar
或Theme.NoTitleBar.Fullscreen
。只需使用默认的Theme
或根本不指定任何主题。
答案 2 :(得分:0)
我将告诉您如何单独和完美地处理标题栏和系统通知面板。 根据您的需要使用其中一个或两个。
1. 不要通过XML将任何主题应用于活动。
2.现在,去吧。 Java文件并添加这些行 在onCreate()里面.. 之后 super.onCreate()..
Part.a。删除标题栏
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
Part.b。删除系统通知面板
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
不要忘记按照惯例跟随他们
setContentView(R.layout.activity_layout_name);