2011-09-29 23 views

risposta

12

È possibile creare un Activity con il tema Theme.Dialog. Nel file AndroidManifest.xml aggiungere il tema all'attività, in questo modo:

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

Dal vostro servizio è sufficiente iniziare questo Activity. Dovrai avviare l'attività con il flag Intent.FLAG_ACTIVITY_NEW_TASK. Vedere How to start an Activity from a Service

+0

@Dallas Buon punto. –

+0

Aki, Dallas: ho usato questo Theme.Dialog e funziona correttamente. Grazie per questo, ma ho una domanda su cosa fare per rimuovere questa finestra di dialogo sul clic del pulsante ??? –

+0

Fine chiamata() nel onclicklistner del pulsante –

2

Non è possibile creare dialogo dal servizio, ma ne abbiamo una soluzione alternativa è che si può creare dialog activity e iniziare l'attività dal vostro servizio

È possibile impostare Tema di attività di dialogo da sotto modo

<activity android:name=".MyDialogActivity" android:theme="@android:style/Theme.Dialog" 
     android:label="@string/app_name"> 
</activity> 
4

C'è qualcuno ha bisogno di opzione, "android: launchMode =" SingleInstance", quando l'attività pop nel ricevitore trasmissione o servizio ?? Senza questa opzione, la mia app avviato automaticamente e pop MyDialogActivity sopra i t. E poi, qualcosa è successo sbagliato. (La mia app ha l'attività principale con la funzione di login automatico. Quando l'altra nuova attività viene avviata automaticamente, MyDialogActivity viene nascosto da esso.)

Quindi, questo è il mio codice xml di esempio.

<activity 
     android:name=".MyDialogActivity" 
     android:launchMode="singleInstance" 
     android:screenOrientation="portrait" 
     android:theme="@android:style/Theme.Dialog" /> 
    <activity 

Spero che qualcuno abbia bisogno dei miei commenti. :)

+1

sono stati inciampare su Internet per ore, impostando il metodo launch aiuta, thx. –

Problemi correlati