Desenvolupament d'aplicacions amb App Inventor

Tutorial Exemples     Recursos CITCEA
Llibre Projectes Dades pràctiques   Inici

Com decidir el nombre de pantalles

Quan es comença a emprar AppInventor és fàcil tendir a fer una pantalla per a cada disposició d'elements, però això té alguns inconvenients. Per un costat, cada pantalla té el seu propi programa i, per tant, si hi ha funcions que es necessiten a dues pantalles caldrà fer-ne una còpia. Per un altre costat, les variables estan definides per a cada pantalla i si una mateixa variable s'ha de poder fer servir a dues pantalles cal passar-la, ja sigui en el moment d'obrir la pantalla o emprant una TinyDB (que sí és accessible des de totes les pantalles).

En realitat, quasi totes les aplicacions es poden fer amb una única pantalla ja que és possible anar mostrant o ocultant elements (individualment o a nivell d'arrangements). De fet, molts usuaris experimentats programen així.

Alguns criteris a l'hora de decidir quantes pantalles emprar serien:

 Si hi ha trossos de programa que es repeteixen en dues pantalles, probablement seria millor que només n'hi hagués una.

 Si hi ha conjunts d'elements visuals que es mostren en dues pantalles, seria millor que només n'hi hagués una.

 Normalment, si hi ha dades necessàries en més d'una pantalla és preferible fer una única pantalla.

 Si un programa consta de varies parts absolutament separades, probablement és millor fer una pantalla per a cada part.

 Si una aplicació té diferents nivells de menú que porten a diferents pantalles, sol ser recomanable posar tots els menús en una pantalla i fer una pantalla per a cada part.

És important tenir en compte que a l'obrir l'aplicació sempre es mostra la pantalla Screen1.

En programes amb força elements pot ser convenient crear una funció per gestionar quins es veuen en cada moment. Es pot crear un cas per a cada vista i passar, com a paràmetre el, número (o el nom) de la vista desitjada. En aquesta funció podem desactivar inicialment uns quants elements i després activar els que ens interessin en cada cas. A continuació mostrem un tros de funció d'aquest tipus:

Programa

I en el següent exemple mostrem com es fa servir:

Programa

Observem que hi ha un HorizontalArrangement que no depèn d'una vista concreta sinó que, amb un botó, podem fer que es mostri o s'amagui; per això fem servir una variable global per guardar-ne l'estat que gestionem, dins de la mateixa funció, independentment del número de cas.

El tros de funció que hem mostrat encara es podria simplificar ja que els casos 2 i 3 tenen instruccions iguals i, per tant, podríem fer servir la instrucció OR per juntar-les. En aquest cas, però, no s'hi guanyaria gaire perquè igualment ens caldrien dos blocs if (un per als casos 2 i 3 i un altre per al 3 sol).

 

 

 

 

 

 

 

 

 

 

Llicència de Creative Commons
Aquesta obra d'Oriol Boix està llicenciada sota una llicència no importada Reconeixement-NoComercial-SenseObraDerivada 3.0.