Una risorsa carattere definisce un carattere personalizzato che puoi utilizzare nella tua app. Caratteri possono essere singoli file di caratteri o una raccolta di file di caratteri, noti come famiglia di caratteri e definita in XML.
Scopri anche come definire i caratteri in XML oppure utilizza i caratteri scaricabili.
Carattere integrato
Puoi raggruppare i caratteri come risorse in un'app. I caratteri vengono compilati
R
e sono automaticamente disponibili nel sistema come
risorsa. Puoi quindi accedere a questi caratteri con l'aiuto del
font
tipo di risorsa.
- percorso del file:
res/font/filename.ttf
(.ttf
,.ttc
,.otf
o.xml
)
Il nome file viene utilizzato come ID risorsa.- riferimento della risorsa:
- In XML:
@[package:]font/font_name
- sintassi:
-
<?xml version="1.0" encoding="utf-8"?>
<font-family>
<font
android:font="@[package:]font/font_to_include"
android:fontStyle=["normal" | "italic"]
android:fontWeight="weight_value" />
</font-family> - elementi:
- esempio:
- File XML salvato alle ore
res/font/lobster.xml
:<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android">
<font
android:fontStyle="normal"
android:fontWeight="400"
android:font="@font/lobster_regular" />
<font
android:fontStyle="italic"
android:fontWeight="400"
android:font="@font/lobster_italic" />
</font-family>File XML salvato in
res/layout/
che applica il carattere a unTextView
:<?xml version="1.0" encoding="utf-8"?>
<EditText
android:fontFamily="@font/lobster"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hello, World!" />
Carattere scaricabile
Una risorsa carattere scaricabile definisce un carattere personalizzato che puoi utilizzare in un dell'app. Questo carattere non è disponibile nell'app stessa. Il carattere viene invece recuperate da un fornitore di caratteri.
- percorso del file:
res/font/filename.xml
Il nome file è l'ID risorsa.- riferimento della risorsa:
- In XML:
@[package:]font/font_name
- sintassi:
-
<?xml version="1.0" encoding="utf-8"?>
<font-family
android:fontProviderAuthority="authority"
android:fontProviderPackage="package"
android:fontProviderQuery="query"
android:fontProviderCerts="@[package:]array/array_resource" /> - elementi:
- esempio:
- File XML salvato alle ore
res/font/lobster.xml
:<?xml version="1.0" encoding="utf-8"?>
<font-family xmlns:android="http://schemas.android.com/apk/res/android"
android:fontProviderAuthority="com.example.fontprovider.authority"
android:fontProviderPackage="com.example.fontprovider"
android:fontProviderQuery="Lobster"
android:fontProviderCerts="@array/certs">
</font-family>File XML salvato in
res/values/
che definisce l'array del certificato:<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array name="certs">
<item>MIIEqDCCA5CgAwIBAgIJA071MA0GCSqGSIb3DQEBBAUAMIGUMQsww...</item>
</string-array>
</resources>File XML salvato in
res/layout/
che applica il carattere a unTextView
:<?xml version="1.0" encoding="utf-8"?>
<EditText
android:fontFamily="@font/lobster"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Hello, World!" />