How to hide the title bar for an Activity in XML with existing custom theme
Solution 1:
Do this in your onCreate()
method.
//Remove title bar
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
//Remove notification bar
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
//set content view AFTER ABOVE sequence (to avoid crash)
this.setContentView(R.layout.your_layout_name_here);
this
refers to the Activity
.
Solution 2:
You can modify your AndroidManifest.xml
:
<activity android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">
or use android:theme="@android:style/Theme.Black.NoTitleBar"
if you don't need a fullscreen Activity.
Note: If you've used a 'default' view before, you probably should also change the parent class from AppCompatActivity
to Activity
.
Solution 3:
I now did the following.
I declared a style inheriting everything from my general style and then disabling the titleBar.
<style name="generalnotitle" parent="general">
<item name="android:windowNoTitle">true</item>
</style>
Now I can set this style to every Activity in which I want to hide the title bar overwriting the application wide style and inheriting all the other style informations, therefor no duplication in the style code.
To apply the style to a particular Activity, open AndroidManifest.xml
and add the following attribute to the activity
tag;
<activity
android:theme="@style/generalnotitle">