Advertisement
  1. Code
  2. Mobile Development
  3. Android Development

Suggerimento veloce: Lavorare con caratteri personalizzati in Android O

Scroll to top
Read Time: 6 min
This post is part of a series called Quick Tips: New UI Features in Android O.
Quick Tip: Create Autosizing Text With Android O
Quick Tip: Introducing Android O’s Adaptive Icons and Pinned Shortcuts

() translation by (you can also view the original English article)

La prima immagine per gli sviluppatori di Android O è qui!

In questa serie, stiamo guardando ad alcune delle funzionalità dell'interfaccia utente promettenti che si possono iniziare a sperimentare da oggi, tramite l'anteprima sviluppatori di Android O.

Nel primo suggerimento, ho mostrato come configurare lo sviluppo per supportare questa immagine di anteprima di O e, come creare un testo che automaticamente si ingrandisce e si riduce per adattarsi alla configurazione dello schermo corrente. In questo suggerimento, andremo a vedere come Android O lavorerà con i caratteri personalizzati avendo una esperienza senza fastidi.

Aggiungi caratteri personalizzati nel tuo progetto

Hai mai desiderato fare una particolare parte di testo che si distingue? O forse eri convinto che un carattere personalizzato sarebbe il modo migliore per aggiungere personalità in più alla tua applicazione?

Mentre ci sono molti benefici ad usare caratteri personalizzati, lavorarci su con Android è stato tradizionalmente una esperienza dolorosa, richiedendoti di usare una libreria o creare una View personalizzata.

Per fortuna, lavorare con i caratteri personalizzati in Android sta diventando sempre più facile, come sono destinati a diventare un tipo di risorse pienamente supportato in Android O. Questo significa che aggiungere un carattere personalizzato alla tua app sarà semplice come aggiungere qualsiasi altra risorsa, come ad esempio immagini e testo.

Per seguire questo tutorial, avrai bisogno di alcuni file di caratteri che puoi aggiungere al progetto Android O che abbiamo creato nella prima parte.

Android O supporta sia il formato .otf (OpenType) che .ttf (TrueType). Ci sono un sacco di siti web che offrono questi caratteri gratuitamente, quindi spendi pochi minuti cercando su Google fino a quando non trovi un carattere che ti piace.

Da quando stiamo sperimentando queste nuove caratteristiche con Android O, non fa particolare importanza quale carattere usi ma, quando stai guardando per i caratteri da usare nei rilasci di produzione per la tua app allora devi sempre controllare i termini e condizioni del carattere. Solo perché una risorsa è gratuita da scaricare non ti significa che automaticamente non ci sono restrizioni su come puoi usare e ridistribuire questa risorsa, quindi, controlla sempre le clausole!

Devi anche considerare lo scopo dell'applicazione, contenuti, pubblico di destinazione, poiché diversi caratteri trasmettono messaggi differenti. Se stai progettando una app per aiutare le persone a completare le loro dichiarazioni di redditi, allora il tuo pubblico può richiedere seriamente una consulenza finanziaria e legale contro la tua app se il documento viene inoltrato con un carattere brutto e bizzarro!

Una volta che hai trovato un carattere con cui vuoi lavorare, scarica ed estrailo. A questo punto, dovresti controllare se ci sono caratteri non validi sui nomi dei file del carattere - essenzialmente tutto ciò che non è a-z minuscolo, 0-9 o un trattino basso. Prova ad includere altri caratteri e Android Studio ti lancerà un errore non appena proverai a fare un riferimento a questa risorsa.

Una volta che hai il tuo/i tuoi file del carattere, hai bisogno di un posto dove salvarli:

  • Tasto destro sulla cartella app/res del tuo progetto e seleziona Nuovo > cartella risorse di Android.
  • Apri il menù a tendina e seleziona carattere.
  • Inserisci font come nome file.
  • Fai clic su OK.
Create a resfont folder in Android StudioCreate a resfont folder in Android StudioCreate a resfont folder in Android Studio
  • Fai clic e trascina i tuoi file del carattere all'interno della nuova cartella res/font.

Usare i tuoi caratteri personalizzati

Puoi applicare un carattere personalizzato al tuo testo usando il nuovo attributo XML android:fontFamily:

1
<TextView
2
  android:text="This is some text"
3
  android:layout_width="wrap_content"
4
  android:layout_height="wrap_content"
5
  android:fontFamily="@font/doublefeature"/>
Test your custom font on your Android O AVD Test your custom font on your Android O AVD Test your custom font on your Android O AVD

Puoi anche aggiungere i caratteri personalizzati a qualsiasi stile che hai creato nella tua app:

1
<style name=“headlineFont" parent="@android:style/TextAppearance.Small">
2
   <item name="android:fontFamily">@font/doublefeature</item>
3
</style>

Se desideri utilizzare i caratteri personalizzati a livello di codice, allora puoi recuperare un carattere personalizzato usando il metodo getFont(int), per esempio:

1
import android.support.v7.app.AppCompatActivity;
2
import android.os.Bundle;
3
import android.widget.LinearLayout;
4
import android.widget.TextView;
5
import android.widget.LinearLayout.LayoutParams;
6
import android.graphics.Typeface;
7
8
public class MainActivity extends AppCompatActivity {
9
    
10
  @Override
11
  protected void onCreate(Bundle savedInstanceState) {
12
      super.onCreate(savedInstanceState);
13
      LinearLayout linearLayout = new LinearLayout(this);
14
      TextView ProgrammaticallyTextView = new TextView(this);
15
      ProgrammaticallyTextView.setText("This is some text");
16
      
17
//Reference your custom font//

18
      
19
      Typeface typeface = getResources().getFont(R.font.doublefeature);
20
      ProgrammaticallyTextView.setTypeface(typeface);
21
      linearLayout.addView(ProgrammaticallyTextView);
22
23
      this.setContentView(linearLayout, new LinearLayout.LayoutParams(
24
              LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
25
  }
26
27
}

Creare una famiglia del carattere

Qualche volta capita di estrarre una cartella del carattere e scoprire molteplici versioni dello stesso carattere, ad esempio una versione in corsivo o caratteri con diverse grandezze e spessori variabili.

Se stai usando versioni multiple di uno stesso carattere, allora vorrai raggrupparli insieme in una famiglia di caratteri. Una famiglia di caratteri è essenzialmente un file XML dedicato dove definisci ogni versione di un carattere, insieme ai suoi attributi di stile e peso.

Per creare una famiglia di caratteri:

  • Assicurati di aver aggiunto tutti i file del carattere alla cartella res/font del tuo progetto.
  • Fai tasto destro sulla cartella res/font del tuo progetto e poi, seleziona Nuovo > File risorsa carattere.
  • Dai a questo file un nome e poi, fai clic su OK.
  • Apri questo file XML e definisci tutte le diverse versioni di questo carattere, insieme ai suoi attributi di stile e pesi, per esempio:
1
<?xml version="1.0" encoding="utf-8"?>
2
https://schemas.android.com/apk/res/android">
3
  <font
4
       android:fontStyle="normal"
5
       android:fontWeight="400"
6
       android:font="@font/doublefeature_regular" />
7
8
   <font
9
       android:fontStyle="italic"
10
       android:fontWeight="400"
11
       android:font="@font/doublefeature_italic" />
12
13
 <font
14
       android:fontStyle="bold"
15
       android:fontWeight="400"
16
       android:font="@font/doublefeature_bold" />
17
18
</font-family>

Puoi fare poi un riferimento a uno dei caratteri in questa famiglia usando l'attributo android:fontFamily. Per esempio:

1
android:fontFamily="@font/doublefeature_bold"

Non dimenticare di provare!

Mentre è facile essere trasportati via con le nuove caratteristiche, non esagerare con i caratteri personalizzati! Le interfacce utenti coerenti sono le più facili da navigare e comprendere e, se la tua app è un continuo passaggio tra i caratteri allora i tuoi utenti possono finire a dare più attenzione su come il tuo testo appare, piuttosto per quello che dice.

Se includi caratteri personalizzati nel progetto, allora è importante provare come verrà eseguito il carattere su una vasta gamma di diverse configurazioni di schermo così come, la tua priorità principale dovrebbe essere di assicurarti che il tuo testo sia di facile lettura.

Conclusioni

In questo suggerimento, ti ho mostrato come creare un testo più elegante ed esclusivo, aggiungendo dei caratteri personalizzati ai tuoi progetti. Nel post finale in questa serie, andremo a spostare la nostra attenzione dal testo alle immagini, così come ti mostrerò come creare delle icone adattive del launcher che automaticamente adatteranno la loro forma per adattarsi al dispositivo attuale.

Nel frattempo, guarda alcuni degli altri nostri tutorial sullo sviluppo delle app Android!

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Code tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.