Suggerimento rapido crea testo con autosizing con Android O

La prima anteprima per sviluppatori di Android O è arrivata!

In questa serie di suggerimenti esploreremo alcune delle nuove funzionalità dell'interfaccia utente che puoi guardare avanti nella prossima versione di Android O (reo?).

In questo primo consiglio, avremo un'esperienza pratica con la nuova funzione di autosizing di testo di Android O, che consente di creare testo che si contrae e si espande automaticamente per adattarsi al layout corrente.

Poiché questo è il nostro primo sguardo ad Android O qui su Envato Tuts +, iniziamo facendo in modo che il nostro ambiente di sviluppo sia Android O-ready.

Imposta l'anteprima dello sviluppatore

Al momento, puoi accedere all'Android Developer Preview di Android solo tramite l'ultima build di Android Studio.

Le versioni di Canary sono il punto debole di Android Studio e vengono generalmente aggiornate su base settimanale. Sebbene queste build siano testate, sono meno stabili rispetto alle versioni ufficiali di Android Studio e pertanto non sono consigliate per lo sviluppo della produzione.

Per scaricare l'ultima versione di Canary e acquisire l'anteprima di Android O, avviare Android Studio e selezionare Studio Android > Preferenze ... dalla barra degli strumenti. Selezionare Aspetto e comportamento> Impostazioni di sistema> Aggiornamenti, e dal menu a discesa selezionare Canale delle Canarie.

Quindi, fare clic sull'accompagnamento Controlla ora pulsante per scaricare l'ultima versione da Canary Channel.

Quindi, riavvia l'IDE e apri l'SDK Manager. Assicurarsi che il responsabile SDK Piattaforme SDK scheda selezionata, selezionare Anteprima O Android componente.

Quindi passare al Strumenti SDK scheda e selezionare quanto segue: 

  • Android SDK Build-Tools 26.0.0 (rc1 o superiore)
  • Piattaforma SDK per Android 26.0.0 (rc1 o superiore)
  • Emulatore Android 26.0.0
  • Supporto del repository

Clicca il ok pulsante per scaricare tutti questi componenti.

Infine, crea un nuovo progetto Android che abbia come target Android O. Per semplicità, imposta l'SDK minimo del progetto su Anteprima di Android 7+ O. e quindi selezionare Attività vuota.

Configura il tuo file Gradle

Una volta che Android Studio ha creato il tuo progetto, apri il suo livello di modulo build.gradle file e cambia il buildToolsVersion versione e il Biblioteca di supporto versione alle ultime versioni:

applica plugin: 'com.android.application' android compileSdkVersion 'android-O' buildToolsVersion '26 .0.0-rc1 'defaultConfig applicationId "com.jessicathornsby.myapplication" minSdkVersion' O 'targetSdkVersion' O 'versionCode 1 versionName "1.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

In questa serie aggiungeremo alcune funzionalità di Android O a questa app di esempio. Se hai intenzione di sperimentare queste funzionalità in azione, dovrai creare un AVD che esegue l'immagine del sistema Android O. Avvia il gestore AVD di Android Studio, seleziona Crea dispositivo virtuale ... e quindi seguire le istruzioni visualizzate per creare un AVD. Puoi utilizzare le impostazioni di tua scelta, ma quando Android Studio ti chiede di selezionare l'immagine del tuo sistema, assicurati di selezionare O.

Creare più testo dinamico

Una delle nuove funzionalità dell'interfaccia utente che possiamo attenderci in Android O è l'autosizing di testo. Con l'aggiunta di alcuni attributi XML, puoi creare TextView che aumentano e diminuiscono automaticamente le dimensioni del tuo testo in modo che si adatti sempre perfettamente ai confini di TextView. 

Questo ridimensionamento automatico consente di leggere facilmente il testo sull'ampia gamma di dimensioni e densità dello schermo di Android. Il ridimensionamento automatico può anche aiutarti a evitare strani spazi vuoti nel layout o testo che viene interrotto a metà frase perché hai provato a racchiudere troppe parole in un TextView.

Esistono due modi per implementare la conversione automatica del testo:

  • granularità. Questo approccio ti consente di specificare una dimensione minima e massima del testo, oltre a un valore di granularità, ovvero quanto il tuo testo può aumentare o diminuire di dimensioni con ciascun "passo". TextView ridimensionerà quindi il testo orizzontalmente e verticalmente con questo valore incrementale, finché non si adatta al testo TextView perfettamente.
  • Dimensioni preimpostate. Qui è dove si definisce una matrice di tutte le dimensioni che il testo può essere. Android O selezionerà quindi la dimensione più appropriata da questo array, in base a TextViewle dimensioni.

Qualunque sia il metodo che scegli, dovrai sempre aggiungere il Android: autoSizeText = "divisa" Attributo XML al tuo TextView, quindi apri il file di risorse del layout e aggiungi questo elemento ora.

granularità

Per implementare l'autosizing utilizzando granularità, dovrai aggiungere i seguenti attributi XML al tuo TextView:

  • autoSizeMinTextSize: La dimensione minima del TextView poter usare.
  • autoSizeMaxTextSize: La dimensione massima del TextView poter usare.
  • autoSizeStepGranularity: Il valore dell'incremento. Questo è 1px per impostazione predefinita.

Qui, sto creando una vista che può ridimensionare il suo testo tra 10v e 100SP, in incrementi di 2sp:

Dimensioni predefinite

L'altra opzione è creare una matrice di dimensioni di testo supportate. Android O sceglierà quindi il valore più appropriato da questo elenco, in base alla quantità di testo che deve visualizzare, il TextViewle dimensioni e la configurazione corrente dello schermo.  

Se il tuo progetto non contiene già un arrays.xml file, quindi è possibile crearne uno facendo clic con il pulsante destro del mouse sul progetto res / valori directory e selezione Nuovo> Valori File di risorse. Nella finestra visualizzata, assegna a questo file il nome array, e quindi fare clic ok.

Puoi quindi aprire il tuo nuovo res / valori / arrays.xml file e definire tutte le dimensioni che vuoi il tuo TextView usare.

   10v 15SP 25sp 30SP 100SP 150sp  

Infine, fai riferimento a questo array usando il autoSizePresetSizes attributo, ad esempio:

Non dimenticare di testare!

Una volta aggiunto l'autosizing a a TextView, avvia il tuo Android O AVD e dai un'occhiata al tuo TextView esegue il rendering su uno schermo Android O emulato. Per verificare che l'autosizing funzioni correttamente, aggiorna il tuo TextView per visualizzare diverse quantità di testo e quindi vedere quale impatto ha sull'immagine finale renderizzata che si vede sullo schermo.

Se implementi l'autosizing, è importante testare le visualizzazioni del testo in una gamma di diverse configurazioni dello schermo, poiché potrebbe essere necessario modificare le dimensioni minime e massime del testo per garantire che il testo rimanga leggibile su schermi diversi.

Conclusione

In questo suggerimento rapido, ti ho mostrato come creare un testo che si ridimensiona automaticamente. Nel prossimo suggerimento, vedremo come Android O sta per realizzarlo tanto più facile da usare i caratteri personalizzati nelle tue app Android. Nel frattempo, dai un'occhiata ad alcuni dei nostri altri tutorial: