2009-09-28 25 views
1

我嘗試在textview中顯示斜體文本。 我使用方法TypeFace.defaultFromstyle(TypeFace.ITALIC),但它不起作用,文本的樣式未設置爲斜體。 如果我在defaultFromstyle()的返回值上調用getStyle()方法,它將返回0. 任何想法?android italic字體

回答

20

使用來自Java代碼的setTypeface(Typeface)或來自XML佈局的android:textStyle。如果你想讓你所有的文字都是斜體,他們應該這樣做。

編輯: 在這種情況下,我會認爲您的字體默認情況下不具有斜體樣式。從setTypeface(Typeface)方法的文檔:

設置應顯示文本的字體和樣式。請注意,並非所有字體系列實際上都有粗體和斜體變體,因此您可能需要使用setTypeface(Typeface, int)才能獲得您實際需要的外觀。

你使用自定義字體嗎?嘗試

mTextView.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC), Typeface.ITALIC) 
+1

這正是我做什麼。 這是我的代碼:myTextView.setTypeface(TypeFace.defaultFromstyle(TypeFace.ITALIC)); 但它不起作用。鈮:如果我使用TypeFace.BOLD,這一切都可以。 – Arutha 2009-09-29 07:28:18

+0

是的!這是有效的,但我不明白爲什麼......我使用自定義字體,它應該有斜體變體! – Arutha 2009-09-29 13:26:05

1

從上TextView中的文檔......

公共無效setTypeface(TF字樣,INT風格) 自:API等級1

設置字體和樣式,其中文本應將被顯示,並且會打開Paint中的假粗體和斜體位,前提是您提供的字體沒有指定樣式中的所有位。

1

這應該是所有:

textView.setTypeface(null, Typeface.BOLD_ITALIC); 
    textView.setTypeface(null, Typeface.BOLD); 
    textView.setTypeface(null, Typeface.ITALIC);