GSMWORLD.it



WAP
Home

Introduzione
Cos'é Wap?
Il WAP Forum
Perché Wap?
Architettura
WAP Gateway
WAP e Web server
Sicurezza
Stack WAP

Configurazione
FAQ
Glossario

WML
TUTORIAL
Indice
Cos'é il WML?
La sintassi
Formattazione
Il primo deck
Tag 'DO'
Link
Template e timer
Immagini
Variabili
Un deck completo
Form e input
Form e select
WAP browser
I nostri consigli

Risorse/Emulatori
Risorse/Toolkit

GSMWORLD
Home
Tecnologia
News
Ricerca
Glossario
Contattaci


Ricerca
Ricerca un termine
in GSMWORLD:



webstat
GSMWORLD.it

WAP: il futuro nel telefonino

Tutorial WML

 

Lezione 7.
TEMPLATE e TIMER

TEMPLATE
Nonostante il linguaggio WML sembri molto scarno e semplice consente di realizzare anche una sorta di ereditarietà dei metodi tra deck e card, i cosidetti Template. E' possibile infatti definire e specificare un metodo sia singolarmente per ogni card, sia globalmente condivisibile per tutte le card presenti nel deck risparmiando così di copiare lo stesso codice in più parti del deck. Nel caso in cui lo stesso metodo sia definito anche in una card con parametri diversi, in questo caso la card ha la precedenza ed il metodo verrà riscritto. Sono specificabili e disponibili per il tag "template" gli stessi attributi già visti per il tag card (ontimer, onenterforward, onenterbackward).

Supponiamo di voler disporre in tutte le card del deck di un pulsante "indietro" che rimandi indietro all'ultima card visitata, ecco come potremmo definire il TEMPLATE:

<template>
   <do type="prev" name="back" label="Back">
      <prev/>
   </do>
</template>

Potrebbe però non essere necessario avere lo stesso metodo impostato in tutte le card, ad esempio la possibilità di tornare indietro (back) su una lista di card concatenate ha senso solo dalla seconda in poi. Come fare allora per eliminare il tasto Back dalla prima? Occorre sovrascrivere il metodo nella card che ci interessa, nel nostro esempio sarebbe sufficiente specificare un'azione "noop" corrispondente alla softkey "back".

Nell'esempio che segue viene definito un TEMPLATE per il tasto 'Back'. La "card2" avrà quindi la soft-key 'Back' presente, mentre la "card1" no poiché il metodo 'Back' é sovrascritto nella card utilizzando il tag "noop".

<wml>
<template>
   <do type="prev" name="Back" label="Back">
      <prev/>
   </do>
</template>
<card id="card1">
   <do type="prev" name="Back">
      <noop/>
   </do>
   ...
</card>
<card id="card2">
   ...
</card>
<wml>

TIMER
Il tag "Timer" permette di gestire i momenti di inattività. Quando si entra in una card il timer viene inizializzato, se l'utente non é ancora "uscito" dalla card al momento del suo scadere viene scatenata l'azione preimpostata e specificata nell'attributo "ontimer" della card stessa. I timer sono indicati in decimi di secondo ed é possibile specificare al massimo un timer per ciascuna card.

<timer name="nome_timer" value="valore"/>

Attributi principali
name Specifica il nome di una variabile contenente il valore in decimi di secondo del timer; in questo caso non viene preso in considerazione il valore di default specificato nell’attributo "value". Usciti dalla card, questa variabile conterrà l’eventuale tempo residuo; zero se il timer é scaduto, un valore positivo se l'utente é uscito volontariamente dalla card prima dello scadere del timer.
valore Valore di default del timer in decimi di secondo. Se é specificata la variabile in "name" e questa é già settata con un certo valore, allora verrà utilizzato proprio quel valore per il timer, ignorando il valore di default qui indicato. Obbligatorio

Un classico esempio di utilizzo del tag "timer": si visualizza una card per qualche secondo (con un logo, un titolo, uno spot pubblicitario, etc.) e poi si passa automaticamente ad un'altra card. Nell'esempio seguente si visualizza per 1 secondo il titolo del sito per poi passare al deck home.wml:

<wml>
<card id="splash" ontimer="home.wml" title="GSMWORLD.it">
   <timer value="10"/>
   <p align="center">
      GSMWORLD.it<br/>
      Viaggio nel mondo del GSM
   </p>
</card>
</wml>


Stampa questa pagina






GSMWORLD...viaggio nel mondo del GSM...
Copyright © Marcello Scatà 1997-2002 - Ultima modifica domenica 7 novembre 2004
Execution time 7 ms