Verifica 2 — App interattive Flet (Lezioni 5-8)
Istruzioni
Section titled “Istruzioni”- Durata: 90 minuti
- Puoi usare il cheatsheet
- Consegna: progetto completo funzionante
Parte 1 — Vero/Falso (4 punti)
Section titled “Parte 1 — Vero/Falso (4 punti)”-
ListViewha lo scroll integrato -
page.go("/home")torna alla schermata precedente -
ft.NavigationBarè la barra in alto - Per fare una chiamata API serve
urllib.request
Parte 2 — Completa il codice (6 punti)
Section titled “Parte 2 — Completa il codice (6 punti)”import flet as ftimport urllib.requestimport json
def main(page: ft.Page): page.title = "API Demo" risultato = ft.Column()
def carica_dati(e): # --- COMPLETA QUI --- # 1. Mostra un ProgressBar # 2. Fetch da "https://jsonplaceholder.typicode.com/posts" (primi 3) # 3. Mostra ogni post come card # 4. Gestisci eventuali errori # 5. Nascondi ProgressBar alla fine pass
page.add( ft.ElevatedButton("Carica", on_click=carica_dati), risultato, )Parte 3 — Progetto guidato (10 punti)
Section titled “Parte 3 — Progetto guidato (10 punti)”Crea un’app Flet con:
-
Schermata Home (
/):- Titolo “App Note”
- ListView con note caricate da file JSON
- Bottone “Nuova nota” → naviga a
/aggiungi
-
Schermata Aggiungi (
/aggiungi):- Campo “Titolo”
- Campo “Testo” (multiline)
- Bottone “Salva” → salva su JSON, torna alla Home
- Le note hanno: titolo, testo, data automatica
-
Requisiti:
- Navigazione con
page.go()eft.View - Dati persistenti con JSON
- AppBar con titolo e back button
- Card con ombra per ogni nota
- Navigazione con
Criteri
Section titled “Criteri”| Criterio | Punti |
|---|---|
| Navigazione funzionante | 3 |
| Salvataggio JSON | 3 |
| UI pulita (layout, AppBar, card) | 2 |
| Data automatica | 1 |
| Gestione caso lista vuota | 1 |