it-swarm.com.de

AppCompatActivity als Dialog ohne Titel

Ich habe eine Activity von AppCompactActivity geerbt. In Manifest für Aktivitätssatz Thema:

<style name="Theme.custom" parent="Theme.AppCompat.Light.Dialog">
    <item name="Android:windowNoTitle">true</item>
    <item name="colorPrimary">@color/primary</item>
    <item name="colorPrimaryDark">@color/primary_dark</item>
    <item name="colorAccent">@color/accent</item>
    <item name="colorButtonNormal">@color/accent</item>
    <item name="Android:buttonStyle">@style/ButtonStyle</item>
</style>

Wenn ich Aktivität ausführe, wird dies als Dialog angezeigt, aber der Titel wird angezeigt! Ich versuche supportRequestWindowFeature(Window.FEATURE_NO_TITLE) und RequestWindowFeature(Window.FEATURE_NO_TITLE), aber der Titel wird immer noch angezeigt. Bitte lassen Sie mich wissen, was ist los?


Bearbeiten

Ich löse es, ändere nur Android:windowNoTitle in windowNoTitle! weil ich AppCompactActvity verwende!

51
h.kelidari

Wenn Sie AppCompatActivity haben, funktioniert Folgendes nicht

requestWindowFeature(Window.FEATURE_NO_TITLE);

Die einfache Möglichkeit besteht darin, sie in der Datei style.xml Festzulegen.

<style name="mytheme" parent="Theme.AppCompat.Light.Dialog">
    <item name="windowNoTitle">true</item>
</style>

Es ist name="windowNoTitle", Nicht name="Android:windowNoTitle"

Wenn Sie es programmgesteuert entfernen möchten, fügen Sie Folgendes in onCreate() hinzu

getSupportActionBar().hide();
90
gprathour

Legen Sie in Ihrer style.xml den Stil unten fest

<style name="customDialogTheme" parent="Theme.AppCompat.Light.Dialog">
    <item name="windowNoTitle">true</item>
</style>

dann setzen Sie dieses Thema in Ihre Aktivität

<activity
    Android:name=".yourDailogActivity"
    Android:configChanges="orientation"
    **Android:theme="@style/CheckoutDialogTheme"**
    Android:screenOrientation="portrait" />
1
Pankaj Talaviya

AppCompatActivity unterscheidet sich von Activity und verfügt über eigene Funktionen. Für den gleichen Zweck können Sie einfach - 

supportRequestWindowFeature(Window.FEATURE_NO_TITLE);

Sie können die Dokumentation nachschlagen hier

Hinweis: Fügen Sie dies vor setContentView() hinzu, um einen Absturz zu vermeiden.

0
Al Amin

Sollte nichts über Aktivitätstitel behalten. Wenn Sie diese Schritte ausführen, wird der Aktivitäts-Titel ausgeblendet. 

style.xml:  

    </style>
        <style name="MyTitledActivityDialogTheme" parent="Theme.AppCompat.Light.Dialog">
        <item name="Android:windowNoTitle">true</item>
        <item name="windowActionBar">false</item>
    </style>

manifiest.xml:

 <activity
            Android:name="YouActivity" 
            Android:theme="@style/MyTitledActivityDialogTheme" />

YourClass.Java:

nach setContentView(R.layout.xyz) so

  setContentView(R.layout.xyz);
  if (getSupportActionBar() != null)
      getSupportActionBar().hide();
0
Attaullah