Autore Topic: Problema con Switch toggle  (Letto 591 volte)

Offline federicolandra

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus S
  • Sistema operativo:
    Windows 7
Problema con Switch toggle
« il: 21 Maggio 2012, 09:06:33 CEST »
0
Ciao a tutti questo è il mio primo post qui e ho iniziato da poco a cimentarmi in Java e eclipse quindi mi scuso se la mia domanda vi sembrerà banale. Non sono riuscito a trovare nulla riguardo a questi tipo di oggetto sul web quindi mi appello a voi.
Io sto usando le ultime API google (4.0.3) e l'ultima versione dell'Sdk. Sto cercando di sviluppare un applicazione che riesca a mostrare un pop up all'arrivo di SMS con il relativo testo dentro (ho usato un broadcast receiver per intercettare i messaggi e un alertdialog per mostrare il testo avvalendomi di un intent).
Vorrei ora inserire un menu all'avvio dell'applicazione con un toggle di tipo Switch in modo che una volta cambiato da on a off permetta all'utente di scegliere se mostrare i pop up degli SMS oppure no. Qualcuno potrebbe spiegarmi innanzi tutto se va bene aggiungerlo da main.xml e una volta istanziato quali sono i metodi per capire il cambio da on a off o viceversa quanto l'utente li clicca?  Ultima domanda: una volta che e stato verificato che il toggle e su on, come faccio a far si che le classi broadcast e alert dialog entrino in funzione?
Grazie mille per l'aiuto in anticipo!!

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:Problema con Switch toggle
« Risposta #1 il: 21 Maggio 2012, 15:26:03 CEST »
0
Per lo switch (che poi intendi un ToggleButton?) dovrebbe esserci un metodo tipo setOnCheckedChangeListener, prova a dare un occhio alla documentazione.

Per quanto riguarda l'attivazione/disattivazione del broadcast receiver puoi farlo in questo modo:

Codice (Java): [Seleziona]
int flag= PackageManager.COMPONENT_ENABLED_STATE_ENABLED; //oppure per disattivarlo PackageManager.COMPONENT_ENABLED_STATE_DISABLED
ComponentName component=new ComponentName(ActivityInCuiSei.this, NomeDelBroadcastReceiver.class);

getPackageManager()
    .setComponentEnabledSetting(component, flag,
                                PackageManager.DONT_KILL_APP);