2014-06-29 35 views
0

我有固定大小的按鈕,但文本會隨時更改。 有時文本太長,無法放入按鈕,對於這些情況,我想使用較小的文本大小。如果文本太長,在Android按鈕中更改文本大小

如果文本太長,我該如何更改按鈕的文本大小?

(一種解決方案可能是測試,可以與正常TEXTSIZE使用多少個字符,然後更改TEXTSIZE如果長度超過這一基準大。但是,我希望更多的動態方法。)

回答

1

1)測量按鈕。 2)使用相同的字體,使用Paint.getTextBounds()來獲取寬度。 3)比較按鈕的大小和寬度。你可能需要在兩邊加上一些額外的空間來填充,但是這將會是一個估計。 4)如果文本太大,請減小文本的大小(在Paint對象上)並轉到步驟2. 5)現在您的工作大小已經調整,請在按鈕上調用setTextSize。

注意:如果你正在爲AlertDialog做這件事,你需要在按鈕存在之後做到這一點 - 我已經在第1步有問題,取決於我把這個功能放在哪裏,但它已經很長時間了,我忘了確切的問題。我覺得在演出後我必須做到這一點?

1

您可以擴展Button類類似的東西AutofitTextView

+0

是的,那將是不錯... – EirikO

+0

@EirikO請勾選答案,如果它幫助你。 –

相關問題