Prendi ad esempio la costruzione di un'applicazione che deve comprendere una lista con tante parole, magari catalogate per categorie. Centinaia e centinaia di parole sarebbe un suicidio gestirle all'interno di una lista app inventor, mentre tramite un file con .csv, comodamente apribile da excel, il tutto risulterebbe molto più comodo e veloce.
Come popolare una lista da un file csv in Mit App Inventor 2
Per poter caricare in una list blocks il contenuto presente in un file csv, è possibile utilizzare due specifici blocchi (blocks) di mit app inventor 2, presenti ovviamente nel blocco liste (lists):
- Lista da riga csv (list from csv row text)
- Lista da tabella csv (list from csv table)
Il primo blocco serve nei casi in cui il csv abbia una sola riga (o dei delimitatori speciali al posto dell'acapo), il secondo blocco invece, il più usato lista da tabella csv, crea una lista multipla contenente i valori presenti nelle colonne del csv.
Prendiamo ad esempio un classico csv con una colonna contenente dei nomi e nell'altra delle categorie.
Per poter caricare questo file in app inventor, dovremo usare l'oggetto chiamato File, presente nel menù Archiviazione (storage).
Una volta trascinato l'oggetto file nel visualizzatore (viewer), andiamo nei blocchi a generarne l'azione al click, con Esegui file leggi da nome file (call file read from file name), dove nel nome file scriviamo il nome del file csv (precedentemente caricato nei media della nostra app), preceduto da due barre // (es. //nomefile.csv).
Adesso bisogna far popolare la nostra lista app inventor con il contenuto del csv, lanciando un'azione alla lettura del file caricato.
Il blocco da utilizzare è Per sempre quando file lettura completata (when file got text), al quale possiamo inserire poi tutti i comandi ed i cicli necessari per poter ripulire i dati appena caricati.
Purtroppo infatti, è vero che questi blocchi consentono di caricare in una lista appinventor il contenuto di un file csv, è però anche vero che senza un'accurata pulizia, questi risultano di fatto inutilizzabili.
Potrai infatti trovare dei punti e virgola di troppo, delle parentesi da far sparire con il comando sostituisci (replace), o altro.
Trovi comunque tutti gli esempi necessari dentro un file di progetto .aia scaricabile da questo link, il cui risultato finale è riassumibile in questa immagine:
Potrò sembrare ripetitivo, ma anche imparare a popolare le liste app inventor tramite file csv, è un'operazione fondamentale per poter sviluppare applicazioni / giochi di un certo spessore.
Torna all'elenco delle lezioni
Lascia un commento!