2012-05-10 13 views

risposta

0

Se non sbaglio ... è possibile creare un'attività con ListView .... e mettere il tema come finestra di dialogo nella sua palese come questo ..

<activity android:theme="@android:style/Theme.Dialog" /> 

questo renderà più scuro di sfondo.

+0

Ok, ma ... Perché cambiare il codice e creare un'attività 'PopupWindow'. – Rajkiran

+1

perché, il tuo pop-up sarà un'attività avrà il proprio sfondo ..... che è scuro di default ... dando l'effetto richiesto .. – 5hssba

+0

D'accordo, ma sto dicendo perché chiamare un'attività quando hai il controllo PopupWindow con te. Comunque, se non funziona niente, vado con questa soluzione. – Rajkiran

0

prova questo codice se il tuo popup è un'attività quindi aiuterà definitivamente. crea un file mystyle.xml nella cartella valori del tuo progetto e apporta queste modifiche.

<resources> 
    <style name="customStyle" parent="@android:style/Theme.Dialog"> 
    <item name="android:windowBackground">@android:color/transparent</item> 
    </style> 
</resources> 

fare questo cambiamento nella menifest.xml

<activity android:name="yourActivity" android:theme="@style/customStyle"></activity> 
+0

Come ho detto sopra, utilizzo il controllo 'PopupWindow' e NOT' Activity'. – Rajkiran

3

nel file XML aggiungere qualcosa di simile con la larghezza e l'altezza come 'match_parent'.

<RelativeLayout 
     android:id="@+id/bac_dim_layout" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#C0000000" 
     android:visibility="gone" > 
</RelativeLayout> 

Nella vostra attività OnCreate

//setting background dim when showing popup 
back_dim_layout = (RelativeLayout) findViewById(R.id.bac_dim_layout); 

finalmente fare visibile quando si mostra il tuo PopupWindow e fare la sua visibile andato quando si esce PopupWindow.

back_dim_layout.setVisibility(View.Visible); 
back_dim_layout.setVisibility(View.GONE); 
Problemi correlati