Autore Topic: Font TextView  (Letto 348 volte)

Offline LinkOut

  • Utente normale
  • ***
  • Post: 270
  • Respect: +38
    • Mostra profilo
  • Dispositivo Android:
    Xiaomi Mi5
Font TextView
« il: 15 Dicembre 2014, 13:52:43 CET »
0
Sto cercando un modo per "imporre" all'applicazione di utilizzare, nelle textview, il font "Roboto"(e non quello custom del sistema, scelto dall'utente).

Ciò è possibile proseguendo nel seguente modo:

Codice (XML): [Seleziona]
 <TextView
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:fontFamily="sans-serif" />

Il problema è il seguente:
Citazione
Attribute fontFamily is only used in API level 16 and higher (current min is 14)

Come fare per imporre tale font, senza andare a modificare ogni singono XML a manina?
Altro problema è il "min", andassi anche a modificare tutti gli XML, la soluzione non sarebbe efficace al 100%...

Grazie.

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:Font TextView
« Risposta #1 il: 15 Dicembre 2014, 14:40:25 CET »
+1
cerca la libreria calligraphy
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline tonno16

  • Utente storico
  • *****
  • Post: 1197
  • Respect: +58
    • Mostra profilo
  • Dispositivo Android:
    moto g
  • Play Store ID:
    Diego Tonini
  • Sistema operativo:
    OpenSuse
Re:Font TextView
« Risposta #2 il: 15 Dicembre 2014, 15:21:52 CET »
+1
Io mi ero creato una mia customTextView.

Codice (Java): [Seleziona]
public class CustomTextView extends TextView {
    public CustomTextView(Context context) {
        super(context);
        setFont();
    }
    public CustomTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
        setFont();
    }
    public CustomTextView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        setFont();
    }

    private void setFont() {
        Typeface font = Typeface.createFromAsset(getContext().getAssets(),
                "Infinity.ttf");
        setTypeface(font, Typeface.NORMAL);
    }
}

e usavo come vedi un font esterno.
la cartella asset è al pari livello di res.

Post unito: 15 Dicembre 2014, 15:22:50 CET
dimenticavo. Ovviamente nel tuo xml puoi scrivere com.tuopackagename.CustomTextView al posto di <textView>

Offline LinkOut

  • Utente normale
  • ***
  • Post: 270
  • Respect: +38
    • Mostra profilo
  • Dispositivo Android:
    Xiaomi Mi5
Re:Font TextView
« Risposta #3 il: 16 Dicembre 2014, 10:08:07 CET »
0
A livello di prestazioni ..Calligraphy

EDIT:

Ho provato la libreria e direi che è fatta bene e funziona molto bene.


Grazie. Topic Risolto.
« Ultima modifica: 16 Dicembre 2014, 15:00:03 CET da LinkOut »