AI2 App_ListPicker

ListPicker è un particolare pulsante il quale, una volta selezionato, visualizza un elenco di voci delle quali scegliere. Le voci possono essere specificate tramite la finestra di progettazione Designer sezione Properties impostando ElementsFromString con le varie voci separate da virgola.
L'impostazione dell'elenco può essere fatta anche nell'editor della finestra Blocks.
Molte altre proprietà sono affini al componente Button.
I file zip per i download sono aia compattatti, quando hanno password, essa e' reperibile nel testo App Inventor 2 per esempi


L'applicazione è composta da un ListPicker con nomi di razze di animali (in rosso). Fra queste si potrà scegliere.
Fatta la scelta nella Label apparirà il tipo di animale scelto ed il suo nome.

In un'applicazione complessa, alla scelta, sarebbe lanciata un'azione (telefonata, foto, chat, eccetera).

Adesso occorre assegnare il comportamento al ListPicker lpScegli, passare all'editor di Blocks.
Tutto il lavoro si svolge all'interno del blocco when lpScegli.AfterPicking in italiano dopo avere scelto.
Vengono dichiarate due variabili locali, Voce scelte e NomeAnimale.
All'interno di queste, tre blocchi if-then si occupano di confrontare la scelta fatta con quanto inserito nella finestra Designer per la proprietà ElementsFromString del ListPicking lpScegli.
Se (if) la scelta corrisponde, alla variabile VoceScelta viene assegnata il nome del tipo di animale ed alla variabile NomeAnimale, il nome dell'animale per il tipo scelto.
In ultimo, subito dopo i tre blocchi if-then, ma prima dell'uscita dal blocco delle due variabili locali, utilizzando un blocco join (prelevato da Built-in > Text) il risultato viene inserito nella label lRisultato.

App Inventor mette a disposizione le liste, esse sono un componente estremamente potente perché possono rappresentare qualsiasi cosa.

Nell'esempio precedente la lista delle voci Cane,Gatto,Elefante sono state dichiarate nella finestra Designer, ma in modo più flessibile possono essere gestite in Blocks Editor.

Nell'editor di Blocks, alle liste possono essere aggiunti elementi (item) ed anche altre liste; ogni item, a sua volta, può essere modificato, eliminato e sostituito.