Ich bin mir nicht sicher was du meinst. Kannst du einen Screenshot davon posten?
Lukas Knuth
Antworten:
145
Versuchen Sie , requestWindowFeature(Window.FEATURE_NO_TITLE);in onCreate. Dies muss unmittelbar nach dem Anruf super.onCreateund kurz zuvor erfolgen setContentView.
Haben Sie dies mit 2.2 versucht? Ich bekomme eine Caused by: android.util.AndroidRuntimeException: You cannot combine custom titles with other title featuresAusnahme, aber vielleicht mache ich etwas anderes falsch.
Eleni
Sie verwenden wahrscheinlich eine andere Fenstertitelfunktion im Code oder ein Thema, das andere Dinge mit dem Titel tut.
Femi
14
Das wird nicht funktionieren AppCompactActivity. Sie sollten die Antwort @zackygaurav hinzufügen, damit der Benutzer, der die verwendet AppCompatActivity, die richtigen Informationen erhält.
Moinkhan
@ Moinkhan, wie würde es für 'AppCompactActivity' funktionieren?
Yousuf Sohail
131
Für diejenigen, die verwenden AppCompatActivity, funktionieren die obigen Antworten möglicherweise nicht.
Oder fügen Sie <item name="windowNoTitle">true</item>Ihrem Stil hinzu, dh ohne das Android- Präfix
Rehan
1
Nur noch eine Sache: Nicht ConstraintLayoutim Stammverzeichnis Ihres Layouts verwenden, da Ihre Aktivität sonst nicht auf dem Bildschirm angezeigt wird.
(Tipp des Hutes an @Rehan) Wenn Sie die Kompatibilitätsbibliothek verwenden, sollten Sie ein AppCompatübergeordnetes Thema auswählen und das android:Präfix weglassen . Zum Beispiel:
Danke dafür. Es ist wahrscheinlich ein besserer Ansatz, aber am Ende habe ich requestWindowFeature verwendet. Trotzdem danke :)
Schatten
7
Einfach hinzufügen: Verwenden Sie es ohne Android- Präfix, AppCompatActivityum <item name="windowNoTitle">true</item>es Ihrem Stil hinzuzufügen .
Rehan
Ich habe in vielen Quellen ein gutes Konzept gefunden, aber keiner von ihnen spricht über AppCompat und keinen Appcompat, danke
Somwang Souksavatd
30
Wenn Sie verwenden, AppCompatActivityin dem Sie Theme.AppCompat.xxxfür alles verwendet werden müssen, können Sie den Dialogtitel oder die Aktionsleiste entfernen, styles.xmlindem Sie Folgendes verwenden:
Antworten:
Versuchen Sie ,
requestWindowFeature(Window.FEATURE_NO_TITLE);
inonCreate
. Dies muss unmittelbar nach dem Anrufsuper.onCreate
und kurz zuvor erfolgensetContentView
.quelle
Caused by: android.util.AndroidRuntimeException: You cannot combine custom titles with other title features
Ausnahme, aber vielleicht mache ich etwas anderes falsch.AppCompactActivity
. Sie sollten die Antwort @zackygaurav hinzufügen, damit der Benutzer, der die verwendetAppCompatActivity
, die richtigen Informationen erhält.Für diejenigen, die verwenden
AppCompatActivity
, funktionieren die obigen Antworten möglicherweise nicht.Versuche dies
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
unmittelbar bevor
setContentView(R.layout.MyDialogActivity);
quelle
<item name="windowNoTitle">true</item>
Ihrem Stil hinzu, dh ohne das Android- PräfixConstraintLayout
im Stammverzeichnis Ihres Layouts verwenden, da Ihre Aktivität sonst nicht auf dem Bildschirm angezeigt wird.Sie können Ihr eigenes Thema definieren:
<style name="NoTitleDialog" parent="@android:style/Theme.Dialog"> <item name="android:windowNoTitle">true</item> </style>
(Tipp des Hutes an @Rehan) Wenn Sie die Kompatibilitätsbibliothek verwenden, sollten Sie ein
AppCompat
übergeordnetes Thema auswählen und dasandroid:
Präfix weglassen . Zum Beispiel:<style name="NoTitleDialog" parent="@style/Theme.AppCompat.Dialog"> <item name="windowNoTitle">true</item> </style>
quelle
AppCompatActivity
um<item name="windowNoTitle">true</item>
es Ihrem Stil hinzuzufügen .Wenn Sie verwenden,
AppCompatActivity
in dem SieTheme.AppCompat.xxx
für alles verwendet werden müssen, können Sie den Dialogtitel oder die Aktionsleiste entfernen,styles.xml
indem Sie Folgendes verwenden:<style name="Theme.MyDialog" parent="Theme.AppCompat.Light.Dialog"> <item name="windowNoTitle">true</item> <item name="windowActionBar">false</item> </style>
Beachten Sie die Verwendung von
name="windowActionBar"
anstelle vonname="android:windowActionBar"
.quelle
Wenn Sie AppCompatActivity verwenden, funktioniert requestWindowFeature (Window.FEATURE_NO_TITLE) nicht.
Dazu können Sie ein benutzerdefiniertes Thema in values / style.xml wie folgt erstellen:
<style name="NoTitleDialog" parent="Theme.AppCompat.Dialog.Alert"> <item name="windowNoTitle">true</item> </style>
Bitte beachten Sie, dass der Artikelname: "windowNoTitle" nicht der Artikelname: "android: windowNoTitle"
Wenden Sie in menifest.xml dieses benutzerdefinierte Thema als an
<activity android:name=".activity.YourActivity" android:theme="@style/NoTitleDialog"/>
Oder Sie können getSupportActionBar (). hide () verwenden , um die Aktionsleiste programmgesteuert auszublenden.
quelle
Dieser arbeitete für mich für Appcompat.
<style name="DialogTheme" parent="Theme.AppCompat.Light.Dialog"> <item name="colorPrimary">@color/colorPrimary</item> <item name="colorPrimaryDark">@color/colorPrimaryDark</item> <item name="colorAccent">@color/colorAccent</item> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style>
quelle
Dieser hat für mich gearbeitet.
Ich konnte den Titel deaktivieren
style.xml
<style name="AppDialogScreenTheme" parent="Base.Theme.MaterialComponents.Light.Dialog"> <item name="windowActionBar">false</item> <item name="windowNoTitle">true</item> </style>
AndroidManifest.xml
<activity android:name=".MyActivity" android:theme="@style/AppDialogScreenTheme"> </activity>
quelle
Für Dialoge können Sie Folgendes tun:
Dialog dialog = new Dialog(context); dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
quelle
Das funktioniert bei mir, möge es auch jemandem helfen:
style.xml
<style name="NoTitleActivityDialog" parent="Theme.AppCompat.Light.Dialog.Alert"> <item name="windowNoTitle">true</item> </style>
AndroidManifest.xml
<activity android:name=".DialogActivity" android:theme="@style/NoTitleActivityDialog"/>
quelle