Zeige Light AlertDialog mit Theme.Light.NoTitleBar

7

Ich habe die folgende Zeile in meinem Manifest verwendet:

%Vor%

um keine Titelleiste zu haben und die Light-Version von AlertDialog in meiner App anzuzeigen, wie im Beispiel:

Aber es wird immer noch im dunklen Thema angezeigt:

Mein Dialog Java-Code:

%Vor%

Wie behalte ich das Theme-Licht für AlertDialog?

    
Si8 04.09.2013, 14:03
quelle

3 Antworten

26

Der obere Dialog in Ihrem Beitrag ist ein Holo Light-Themen-Dialog, während der untere Dialog der ältere Themen-Dialog ist. Unter den Honeycomb-Versionen können Sie keinen Holo Light-Themendialog aufrufen. Hier ist ein kleiner Ausschnitt, den ich benutze, um das Lichtthema zu wählen, basierend auf welcher Android-Version das Gerät läuft.

Das AlertDialog.Builder verwendet das Thema des Kontextes, an dem es übergeben wurde. Sie können ein ContextThemeWrapper verwenden, um dies festzulegen.

%Vor%     
James McCracken 04.09.2013, 14:32
quelle
13

Sie können so etwas beim Erstellen von AlertDialog verwenden:

%Vor%

Dieser Code erstellt den Holo Styled AlertDialog in neueren Versionen und den normalen gerätebasierten AlertDialog auf Geräten mit einer älteren Version von Android.

    
hardartcore 04.09.2013 14:13
quelle
3

Sie müssen ein AlertDialog Builder verwenden. Damit können Sie Ihrem Dialog einen Stil zuweisen. Schauen Sie sich das folgende Beispiel an: Ссылка

%Vor%     
JavaDM 04.09.2013 14:09
quelle