lunedì 6 marzo 2017

Cambiare ordine schermi / screen (MIT App Inventor 2)

Avendo iniziato a creare la mia prima applicazione completa per cellulare tramite MIT App Inventor 2, dopo un po' mi sono trovato davanti ad un problema banale quanto apparentemente insormontabile: cambiare l'ordine degli screen (schermi).

Si perchè, dopo aver quasi terminato la mia app per android, mi sono reso conto che ci voleva prima di tutto uno schermo introduttivo, la classica home page dell'applicazione per intenderci.
Avevo infatti creato il mio gioco, facendolo partire immediatamente, ho poi ho deciso di aggiungere una schermata introduttiva con tanto di opzioni. Quindi, sono andato ad aggiungere uno schermo chiamato Schermo2 (screen2), ed è solo allora che ho scoperto che non è possibile ordinare gli screen in mit app inventor 2.

cambiare l'ordine degli schermi / screen in MIT App Inventor 2

Vediamo quindi come riuscire a superare questo limite dell'ambiente di sviluppo.


Come cambiare l'ordine degli schermi / screen in MIT App Inventor 2


Per poter riordinare le schermate di una nostra applicazione app inventor, mettendo ad esempio lo schermo 1 (screen1) dopo lo schermo 2 (screen2) e lo schermo 3 (screen3) prima dell'1, occorre agire al di fuori del browser.

Prima di tutto bisogna che sia chiaro il concetto di import/export progetti mit.
Poi, seguire questi passaggi:
  1. Esportare il progetto della nostra applicazione, salvando il file .aia sul nostro pc e facendone una copia di sicurezza prima di andare a metterci mano
  2. Creare una cartella temporanea sul nostro pc, chiamandola temp (o come ci pare)
  3. Aprire il file .aia salvato sul pc, con un programma tipo winzip
  4. Entrare nella cartella src, e continuare a salire fino a trovare l'ultima cartella figlia contenente una serie di file con estensioni .bky, .scm, .yail (a me ad esempio il .yail non c'era, quindi modificate solo i file che trovate)

    screen da rinominare
  5. Copiare tutti i file trovati, nella cartella temporanea creata in precedenza (temp)
  6. Se (ad esempio) le schermate mit da riordinare sono 2 (es. screen1 e screen2), partite da screen1.bky, screen1.scm e screen1.yail, e rinominate tutti file in screenX.estensione. Poi rinominare i file screen2.estensione in screen1.estensione, ed infine rinominare i file screenX.estensione in screen2.estensione, in modo da invertire l'ordine dei file
  7. Adesso aprite tutti i file screen1.estensione con un editor di testo e cercate e sostituite tutte le occorrenze della parola Screen2 con Screen1 (dato che in precedenza il file che ora si chiama screen1, era in realtà screen2), poi ripetete l'operazione con tutti i file screen2, rinominando le occorrenza di Screen1 in Screen2 (ed ovviamente salvate poi tutti i file modificati)
  8. Infine, andare nell'archivio scaricato, nella cartella dove abbiamo preso i file, e sovrascriverli con i nuovi file (oppure cancellarli e ricarcarli, se si è proprio cambiato nome a qualche schermata)
  9. Una volta salvato il nuovo file .aia, andare in mit app inventor e cancellare il progetto originale
  10. Infine, importare sul sito di MIT, il nuovo progetto tramite il file .aia

Il risultato finale sarà quello di aver riordinato nella maniera che più ci aggrada le schermate della nostra applicazione MIT App inventor.

Ordine screen mit invertito

Il metodo sopra indicato è più facile a farsi che a dirsi, tuttavia è davvero strano che questa applicazione non consenta già con qualche semplice click del mouse di riordinare gli screen, dato che cambiare l'ordine degli schermi di un gioco creato su mit app inventor 2, è un'esigenza più che legittima, che prima o poi vi capiterà sicuramente se sviluppate qualche gioco o applicazione un po' complessa.

Elenco lezioni

Piaciuto l'articolo? Lascia un commento!

EmoticonEmoticon