2012-01-06 14 views
6

sto usando: android:theme="@android:style/Theme.Translucent.NoTitleBar"Theme.Translucent non riesce su ICS

in combinazione con: getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND, WindowManager.LayoutParams.FLAG_BLUR_BEHIND);

per ottenere un piacevole effetto sfocatura dello sfondo trasparente, emula uno stile di dialogo.

Funziona alla grande su 2.3 e giù, ma è un colore a tinta unita (leggi non trasparente) su dispositivi con ICS/3.0 e versioni successive. So che hanno introdotto un tema holo e non sembra esserci un tema Theme.Holo.Translucent specifico. Qualche idea su come ottenere uno sfondo traslucido su ICS e precedenti, non sono contrario all'utilizzo di temi separati definiti in valori-v11.

+0

Non sembra questo risolverà il tuo problema, ma nel caso in cui ve lo siate perso: [Holo ovunque] (http://android-developers.blogspot.com/2012/01/holo-everywhere.html) – tidbeck

+0

Puoi specificare quali dispositivi sono in esecuzione? Theme.Translucent.NoTitleBar funziona per te in un progetto Android minimamente creato? Android: hardware Accelerato vero/falso fa la differenza? Varie combinazioni di attributi nel tag fanno la differenza (ad esempio, diverse modalità di compatibilità)? –

+1

Ho appena creato un nuovo progetto con manifest minimo (generato automaticamente) e aggiunto il tema. Funziona con i miei dispositivi 2.3 ma non sul Galaxy Nexus. android: l'hardware accelerato non sembra avere un impatto o usa-sdk. – sgarman

risposta

3

Usa

dialog.getWindow().setBackgroundDrawable(new ColorDrawable(0)); 

o estendere Theme.Translucent.NoTitleBar e aggiungere

<item name="android:windowBackground">@android:color/transparent</item> 
+0

Sono riuscito a farlo funzionare utilizzando i temi ActionbarSherlock aggiornati. – sgarman

1

sembra che deprecati sfocatura, almeno con FLAG_BLUR_BEHIND:

public static final int FLAG_BLUR_BEHIND

Questa costante è deprecato. L'offuscamento non è più supportato.

+0

Buona scoperta, ma anche se rimuovo che ancora non ottengo la trasparenza dal tema. Quindi, anche se questo è un buon consiglio, in realtà non risolve il mio problema :( – sgarman

Problemi correlati