Le "soft keys"
Le "soft keys" sono tasti solitamente utilizzati nel telefonino per accedere ad alcune opzioni o per uscire da determinate applicazioni. A titolo di esempio, vediamo le soft keys del Nokia 6600.
Questi tasti, proprio perché utilizzati prevalentemente per le opzioni e i menu, sono quasi sempre vicini al bordo inferiore dello schermo, quindi sono particolarmente utili per inserire opzioni, menu o ad esempio il tasto per uscire dall'applicazione. Nel nostro caso ad esempio associato ad uno di questi tasti le funzioni per lo slideshow.
fscomnand2("SoftKeys")
Nella precedente lezione abbiamo usato il comando fscomnand2("setSoftKeys"). La sua versione "estesa" della sintassi prevede tre campi:
Listato 1. Sintassi completa del metodo fscommand2()
fscommand2("setSoftKeys","tasto1","tasto2");
Le stringhe "tasto1" e "tasto2" rappresentano il testo che appare sul cellulare in relazione a questi due tasti.
Quando l'applicazione è a tutto schermo queste scritte non vengono mostrate in quanto il filmato occupa tutta l'area dello schermo, ma quando l'applicazione non è in fullscreen queste scritte prendono il posto di quelle predefinite del cellulare, nella posizione che si può vedere in figura.
Nell'immagine sono riportate le opzioni di default, ma con i parametri del setSoftKeys è possibile modificarle a proprio piacimento. Nell'emulatore non è possibile vedere questo comando in azione poiché i contenuti vengono eseguiti sempre a pieno schermo.
Abbiamo visto che il softkeys sinistro è associato al tasto pageUp; analogamente quello di destra è associato al tasto pageDown, quindi una volta utilizzato il comando setSoftKeys per impostarne l'azione e abilitarli è sufficiente usare il codice:
Listato 2. Gestire gli eventi delle "soft keys"
on(keyPress "<PageUp>") { // azioni }
on(keyPress "<PageDown>") { // azioni }
Un esempio pratico
Una caratteristica ancora assente nella nostra applicazione è la possibilità di abbandonarla. Vediamo come inserirla e approfondiamo anche l'utilizzo del comando fscommand2("setSoftKeys").
Il comando per uscire dall'applicazione è molto semplice ed è fscommand2("quit");. Possiamo assegnare questa azione alla softkey destra e per farlo basta eseguire un'operazione analoga a quella eseguita per lo slideshow.
Inseriamo un testo statico con la scritta "Esci" nel bordo in basso a destra dell'area di lavoro, come in figura.
Per aggiungere l'azione necessaria per uscire dall'applicazione basta modificare ancora una volta il codice del nostro pulsante fittizio.
Listato 3. Uscire dall'applicazione
on(keyPress "<PageDown>"){
fscommand2("quit")
}
Questa caratteristica non può essere testata sull'emulatore, ma funziona sui cellulari.
Nel nostro caso non è indispensabile utilizzare la sintassi completa del comando setSoftKeys, dato che eseguiamo l'applicazione a tutto schermo e abbiamo quindi provveduto ad inserire direttamente le diciture nel filmato, senza che fosse necessario mostrarle all'esterno.
Era tuttavia doveroso mostrare la sintassi completa del comando, sia per conoscerne le potenzialità complete sia per poterlo utilizzare nel caso si decidesse di sviluppare applicazioni o giochi da non eseguire a tutto schermo, oppure nel caso il proprio filmato potesse essere usato anche su cellulari che non supportano il fullscreen.
Questa caratteristica infatti, sebbene ormai supportata da praticamente tutti i modelli, potrebbe non essere presente su modelli meno recenti. Vedremo in seguito come rilevare le capacità dei vari modelli di cellulari e come creare applicazioni in grado di "reagire" in base alla presenza o meno di determinate caratteristiche.
È possibile scaricare l'esempio sviluppato fin'ora.