2012-01-12 17 views
6

Mam pobraną czcionkę niestandardową do użycia w mojej aplikacji. Chcę ustawić pogrubioną czcionkę dla tej czcionki. Użyłem poniższy kod, ale jej nie działa:Sposób ustawiania czcionek niestandardowych pogrubioną czcionką

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); 

Odpowiedz

3

Spróbuj

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

dziękuję, działa teraz .. – Dhanesh

+0

OK, jeśli działa, przyjmij odpowiedź – Vamshi

+0

jeszcze jedną rzecz, czy możliwe jest użycie w układzie xml? jeśli tak, to w jaki sposób? – Dhanesh

8

DEFAULT_BOLD jest typu Typeface. Typeface.create() wymaga int.

Oto poprawna

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

Próbowałem tego, Nie działa – HemangNirmal

+1

To działa idealnie. Powinna być zaakceptowaną odpowiedzią. – technophyle

0

Żadna z tych odpowiedzi pracował dla mnie.

Może pracował dla innych, ale sposób mam odważne wersję czcionki pracujących w moim programie, zrobiłem następujący:

  1. Kopiuj/wklejony .ttc czcionki - w tym przypadku AmericanTypewriter .ttc - do folderu, który utworzyłem w katalogu głównym/assets/o nazwie/fonts. Więc główne/aktywa/fonts/AmericanTypewriter.ttc

  2. Zrobiłem pewien miałem TextView z id w moim xml:

    <TextView 
        android:id="@+id/myTextView" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="This is American Bold"/> 
    
  3. Na szczycie mojej działalności, ogłoszony TextView obiekt

    private TextView myTextView; 
    
  4. W onCreate taką samą aktywność w() dodaje się następujące kod:

    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

Późne odpowiedź, ale być może pomocne:

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

ten sposób mam zmieniony wygląd TextView z SlidingTabLayout.

Powiązane problemy