2016-05-23 48 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

谢谢,但那不是问题。 –

相关问题