2016-06-13 33 views
2

我有一個簡單的笑話應用程序。有按鈕在哪裏設置與此代碼的文本:在按鈕中設置2種不同的顏色

bt_barjokes.setText(getString(R.string.bar_jokes)+ " ("+barjokes.size()+")"); 

完美的作品,它提供與使用的ArrayList正確的標題和大小:酒吧笑話(55)

的問題是我想改變(55),顏色和字體大小:

("+barjokes.size()+")") 

我嘗試了好幾種建議的解決方案在這個論壇上,但不能讓它開始工作。

回答

2

您可以使用ForegroundColorSpan更改文字顏色,並使用AbsoluteSizeSpanRelativeSizeSpan更改字體大小。

2

你可以看看@xizzhu的答案,它的確定還可以使用SpannableStringHtml.fromHtml

setText(Html.fromHtml("<font color=#343434>" +"<small>"+ "Little Black Text" +"</small>"+ 
"</font>"+"&nbsp&nbsp"+"<font color=#123456>" +"<big>" +"Big Blue Text" +"</big>"+ "</font>")); 

@Edit:如果你想使用這個在您的按鈕在XML中加入這一行,如:android:textAllCaps="false"

您可以使用:<small><big>,測試在Toolbar

enter image description here

Button,它看起來像:

enter image description here

+0

我嘗試添加的代碼,但按鈕上的文字不改變。我試着用你的確切代碼進行測試,但它只是用正常的黑色字體寫出文本(小黑文本大藍文本)。沒有藍色或更大的字體。 –

+0

@FlemmingWacherDanielsen我的朋友爲我編輯了我的答案,請查看編輯部分 –