2012-01-12 15 views
6

Ho scaricato caratteri personalizzati da utilizzare sulla mia app. Voglio impostare lo stile in grassetto per quel tipo di carattere. Ho usato il seguente codice, ma la sua non funziona:Come impostare caratteri personalizzati in grassetto

Typeface tf = Typeface.createFromAsset(getAssets(), 
"fonts/BRADHITC.otf"); 
Typeface bold = Typeface.create(tf, Typeface.DEFAULT_BOLD);  
TextView tv = (TextView) findViewById(R.id.cou_text); 
tv.setTypeface(tf); 

risposta

3

Prova questa

tv.setTypeface(null, Typeface.BOLD); 
+0

grazie, funziona ora .. – Dhanesh

+0

OK se funziona accetta una risposta – Vamshi

+0

un'altra cosa, è possibile utilizzare nel layout xml? se sì allora come? – Dhanesh

8

DEFAULT_BOLD è di tipo carattere. Typeface.create() richiede int.

Ecco corretta

Typeface bold = Typeface.create(tf, Typeface.BOLD); 
+0

Ho provato questo, non funziona – HemangNirmal

+1

Funziona perfettamente. Doveva essere la risposta accettata. – technophyle

0

Nessuna di queste risposte ha lavorato per me.

Forse hanno lavorato per gli altri, ma il modo in cui ho avuto la versione in grassetto di un carattere che lavora nel mio programma, ho fatto la seguente:

  1. copia/incollato il .ttc carattere - in questo caso AmericanTypewriter .ttc - in una cartella che ho creato nella mia directory principale/assets/chiamata/fonts. Così, principali/attività/fonts/AmericanTypewriter.ttc

  2. ho fatto in modo che ho avuto un TextView con un id nel mio xml:

    <TextView 
        android:id="@+id/myTextView" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="This is American Bold"/> 
    
  3. Nella parte superiore della mia attività, dichiarata TextView oggetto:

    private TextView myTextView; 
    
  4. In onCreate della stessa attività(), inserito il codice seguente:

    Typeface americanFont = Typeface.createFromAsset(getAssets(), 
         "fonts/AmericanTypewriter.ttc"); 
        Typeface americanFontBold = Typeface.create(americanFont, Typeface.BOLD); 
        myTextView = (TextView) findViewById(R.id.myTextView); 
        myTextView.setTypeface(americanFontBold); 
    
1

risposta in ritardo, ma forse utile:

textView.setTypeface(Typeface.createFromAsset(getContext().getAssets(), "fonts/BRADHITC.otf"), Typeface.BOLD); 

In questo modo ho cambiato TextView comparsa di SlidingTabLayout.

Problemi correlati