mercoledì 10 settembre 2014

FreeDrawing e XE7: multitouch, nuovo menù, immersive mode e splashscreen!

A pochi giorni dall'uscita di RAD Studio XE7, sono riuscito ad aggiungere (con facilità) alcune nuove funzionalità introdotte con XE7 anche alla mia applicazione FreeDrawing (versione 1.0.14)!

I principali cambiamenti:


Supporto multitouch

Ora è possibile usare più di un dito per comporre il proprio disegno. Inoltre, il passaggio dal tradizionale evento OnMouseMove al nuovo OnTouch ha portato anche un sensibile miglioramento nel riconoscimento del tocco;

Disegno multitouch

Immersive Full-Screen mode

l'utente ora può concentrarsi sul proprio disegno sfruttando tutta la superficie tattile disponibile, anche questo grazie al supporto introdotto con XE7 a questa funzionalità di Android 4.4+ ;


Nexus 5, Immersive Full-Screen mode

Nexus 5, Immersive Full-Screen mode, con sticky flag


Splashscreen

Aggiunto senza sforzo grazie al supporto introdotto in XE7;

Nuovo menù con TMultiView

In occasione della semplificazione delle impostazioni relative al tratto, ho reimplementato il menù dell'applicazione utilizzando il TMultiView (altra novità di XE7). Anche in questo caso, tutto è stato molto semplice e ora su dispositivi differenti (smartphone e tablet) si ottiene una rappresentazione del menù idonea al contesto (per esempio con un drawer sui dispositivi più piccoli e con un docked panel sui tablet in orientamento orizzontale).


Tablet Nexus 7, orientamento verticale (notare il pulsante del menù in alto a sinistra)

Tablet Nexus 7, orientamento verticale, drawer aperto


Tablet Nexus 7, orientamento orizzontale, docked panel
Una cosa molto piacevole (che non avevo ancora letto da nessuna parte) è che il drawer si apre anche facendo uno scorrimento del tocco dal bordo sinistro del tablet all'interno del display (quello che chiamano "inward swipe").

Considerazioni:

  • Il nuovo XE7 mi sembra davvero più stabile e veloce delle versioni precedenti, anche nelle fasi di compilazione per le piattaforme mobile (non ho misurato precisamente ma la sensazione è abbastanza netta compilando per Android);
  • Il componente TMultiView è veramente comodo da usare e risolve un problema decisamente ostico da affrontare altrimenti (offrire la migliore esperienza d'uso all'utente a prescindere dal dispositivo che sta usando);
  • Veramente semplice sfruttare anche il supporto multitouch (comunque concordo con Andrey Yefimov e mi sarebbe piaciuto [se possibile] che il parametro Action di OnTouch fosse declinato per ogni elemento di Touches);
  • Il prossimo passo è aggiornare anche la versione iOS (e nell'occasione sfruttare le nuove tecnologie FireUI per differenziare leggermente l'interfaccia fra le versioni iOS e Android)!
  • Ho fatto provare il supporto multitouch ad un paio di amici (Davide & Davide, che ringrazio) possessori di Microsoft Surface Pro e funziona, a breve cercherò di compilare una versione di FreeDrawing anche per Windows (su dispositivi touchscreen)!
Un'applicazione Delphi XE7 di test multitouch in esecuzione su Surface Pro
Microsoft Surface Pro (Tablet Windows)


A presto e buon lavoro!

Andrea

Nessun commento:

Posta un commento