按钮文本格式不适用于较旧的API

时间:2018-05-21 20:29:27

标签: android button formatting textview

我试图设置一个文本看起来像这样的按钮:

  

$ 34.99 $ 24.99

但是,在某些较旧的设备上,格式化根本不会出现。我已经尝试了Html.fromHtml,并且自己构建了SpannableString,但没有一个有效!

1 个答案:

答案 0 :(得分:0)

无论出于何种原因,将Button更改为TextView似乎都可以解决问题!

编辑:使用Button工作正常,但您需要在26之前将textAllCaps设置为false。感谢@Mike M 。解释!

现在可以使用以下代码:

SpannableString spannableString = new SpannableString(oldBuyPrice + newBuyPrice);
spannableString.setSpan(new StyleSpan(Typeface.ITALIC), 0, oldBuyPrice.length(), 0);
spannableString.setSpan(new StrikethroughSpan(), 0, oldBuyPrice.length(), 0);
buyButtonTextView.setText(spannableString);