2016-05-23 49 views
1

我發現this question,並且工作正常。但我有一個資源字符串,它是一個格式字符串,進入String.format如何使用String.format創建格式化標題

考慮將R.string.test設置爲This is a test: <b>%1$s</b>

那麼這個代碼:

getActionBar().setTitle(String.format(getString(R.string.test), "TEST")); 

不顯示大膽,但這(但並不明顯的顯示替換字符串):

getActionBar().setTitle(getResources().getText(R.string.test)); 

如何使用String.format創建一個格式化的標題?

+0

使用Spannable設置文本字體,你擁有了它目前的方式,Android將只是忽略它。看到[這個問題](http://stackoverflow.com/questions/3282940/set-color-of-textview-span-in-android)如何實現它。 – t0mm13b

回答

1

你有沒有試過Html.fromHtml

getActionBar().setTitle(Html.fromHtml("<font color=#343434>" + "Your Text" + "</font>")); 

我有另一個同樣,這是一個具有多個空間的Html字符串:

getActionBar().setTitle(Html.fromHtml("<font color=#FFFFFF>" + "&nbsp&nbsp&nbsp&nbsp&nbsp" +"Your Text" + "</font>")); 

您也可以直接去:

setTitle(Html.fromHtml("<font color=#343434>" + "Your Text" + "</font>")); 

enter image description here

+0

剛剛嘗試過,似乎沒有工作。 –

+0

我編輯了我的答案,可能會爲你工作。無意中我寫了這樣的顏色:## 343434 –

+0

明白了。我必須在我的資源文件中轉義HTML標記:https://developer.android.com/guide/topics/resources/string-resource.html –

1

的String.format有這句法,例如: 的String.format( 「%s%d%F」,「字符串1,敏,myDouble); 你的變量類型和格式的報價去,由序言% ,然後引號和逗號後,你把你的變量 - 在必須在引號中指定的類型,或者它可能會崩潰

+0

謝謝,但那不是問題。 –