Come posso usare un carattere personalizzato che è stato aggiunto nella cartella delle risorse nel mio xml? So che possiamo usare il metodo setTypeface()
in java, ma dobbiamo farlo ovunque, dove lo usiamo TextView
. Quindi c'è un modo migliore?Come utilizzare caratteri personalizzati in Android xml?
risposta
Il modo migliore in cui ho trovato googling è: se vuoi utilizzare in TextView, dobbiamo estendere Textview e impostare il carattere in modo che in seguito possiamo utilizzare la nostra Textview personalizzata nel nostro xml. Mostrerò il TextView esteso sotto
package com.vins.test;
import android.content.Context;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.widget.TextView;
public class MyTextView extends TextView {
public MyTextView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
init();
}
public MyTextView(Context context, AttributeSet attrs) {
super(context, attrs);
init();
}
public MyTextView(Context context) {
super(context);
init();
}
private void init() {
Typeface tf = Typeface.createFromAsset(getContext().getAssets(),
"your_font.ttf");
setTypeface(tf);
}
}
Chiamando init() per impostare il carattere in ciascuno dei costruttori. Successivamente dobbiamo usare questo nel nostro main.xml come mostrato sotto.
<com.vins.test.MyTextView
android:id="@+id/txt"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:layout_weight="1"
android:text="This is a text view with the font u had set in MyTextView class "
android:textSize="30dip"
android:textColor="#ff0000"
>
Aggiornamento:
essere informati circa la perdita di memoria in fase di pre-4.0 di Android come detto da pandre.
@vins: cosa succede se l'utente dichiara anche 'android: textStyle =" bold "'? Il testo sarà effettivamente impostato in grassetto? –
@kilaka Sì, dovrebbe girare in grassetto. – Vins
@vins - grazie. Questo significa che il file ttf include tutti i sottotipi del font: grassetto, corsivo, ecc. E combinazioni di essi? –
Metti la tua file di font in asset\fonts\fontname
definire tre TextView nel file XML allora, inserire questo codice nella classe di attività:
public class AndroidExternalFontsActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Font path
String fontPath = "fonts/DS-DIGIT.TTF";
String fontPath1 = "fonts/Face Your Fears.ttf";
String fontPath2 = "fonts/HelveticaNeue-Bold_0.otf";
// text view label
TextView txtGhost = (TextView) findViewById(R.id.ghost);
TextView txtGhost1 = (TextView) findViewById(R.id.ghost1);
TextView txtGhost2 = (TextView) findViewById(R.id.ghost2);
// Loading Font Face
Typeface tf = Typeface.createFromAsset(getAssets(), fontPath);
Typeface tf1 = Typeface.createFromAsset(getAssets(), fontPath1);
Typeface tf2 = Typeface.createFromAsset(getAssets(), fontPath2);
// Applying font
txtGhost.setTypeface(tf);
txtGhost1.setTypeface(tf1);
txtGhost2.setTypeface(tf2);
}
}
Ehi, questo è il modo normale per impostare il carattere, la domanda era per l'utilizzo di caratteri personalizzati per impostazione predefinita in XML. – Vins
- 1. Caratteri personalizzati in Android
- 2. Utilizzo di caratteri personalizzati in Android TextView utilizzando xml
- 3. Android: Come aggiungere caratteri personalizzati a tema/stile/xml
- 4. Utilizzare i caratteri personalizzati in Phoenix
- 5. escape caratteri speciali come & in android xml
- 6. Come posso utilizzare caratteri personalizzati in un elemento Canvas HTML5?
- 7. Riutilizzare Android xml enum attributi personalizzati
- 8. Caratteri personalizzati in Java
- 9. Come impostare caratteri personalizzati in grassetto
- 10. caratteri speciali (@,?) Come XML-string in applicazione android
- 11. Come posso utilizzare caratteri personalizzati su un sito Web?
- 12. personalizzati in Android 4
- 13. come utilizzare un ArrayAdapter in Android di oggetti personalizzati
- 14. Uso di caratteri personalizzati in Cocos2d
- 15. Aggiunta di caratteri personalizzati al tema in Android
- 16. Utilizzo di enum come attributi XML personalizzati
- 17. Utilizzo di caratteri OTF personalizzati in Ggplot2
- 18. Come inserire caratteri speciali come testo nell'editor XML per Android?
- 19. Android: rendere i caratteri in grassetto in xml
- 20. Come utilizzare la serializzazione XML predefinita da metodi di serializzazione XML personalizzati
- 21. Caratteri personalizzati in un'app TVOS TVML
- 22. PDFKit non visualizza caratteri personalizzati
- 23. Pulsanti personalizzati Android
- 24. Android XML Esiste un modo per utilizzare lo spazio dei nomi degli strumenti con attributi personalizzati?
- 25. Come visualizzare in anteprima caratteri personalizzata Android Studio (usando Calligrafia)
- 26. Caratteri Unicode come \ u0016 in XML
- 27. Come utilizzare i controlli personalizzati in WPF
- 28. @ font-face per caratteri personalizzati, caratteri non uniformi in Chrome
- 29. Impossibile trovare caratteri personalizzati - iOS
- 30. Caratteri personalizzati per iOS 5
Ho aggiornato la mia risposta. Si prega di rimuovere -ve da quella risposta. –
Prova questo tutorial [http://www.barebonescoder.com/2010/05/android-development-using-custom-fonts/](http://www.barebonescoder.com/2010/05/android-development-using -custom-fonts /) Penso che ti sia d'aiuto – Ajay
Ciao per favore fai riferimento a questo post. un problema con la stessa natura è stato discusso e risposto laggiù. –
Wajeeh