Android 粗体文本在翻译中丢失
Toast显示的字符串wodString加了下划线和粗体,就像我在string.xml中看到的一样。在下一行,当我尝试设置wod_类型的文本时,它显示的文本没有粗体或下划线。我尝试过casting、Html.fromHtml()等。有人知道我还可以尝试什么吗? 备注:wod_类型是文本视图Android 粗体文本在翻译中丢失,android,Android,Toast显示的字符串wodString加了下划线和粗体,就像我在string.xml中看到的一样。在下一行,当我尝试设置wod_类型的文本时,它显示的文本没有粗体或下划线。我尝试过casting、Html.fromHtml()等。有人知道我还可以尝试什么吗? 备注:wod_类型是文本视图 CharSequence[] s = getResources().getTextArray(R.array.wod_style_array); CharSequence wodString = s[
CharSequence[] s = getResources().getTextArray(R.array.wod_style_array);
CharSequence wodString = s[position];
Toast.makeText(v.getContext(), wodString, Toast.LENGTH_SHORT).show();
wod_type.setText(wodString + m.wodScoring[position]);
您需要使用spannable字符串类
wodString+m.wodScoring[position]
是问题所在。+
运算符将CharSequence
s连接到单个字符串
。但是,字符串
不能保存样式信息
您可以使用来避免这些问题:
text.setText(TextUtils.concat(wodString, m.wodScoring[position]));
如果
m.wodScoring[position]
不是字符串
,请使用适当的方法创建一个字符串(例如Integer.toString
)。工作起来很有魅力。完美的解释。
text.setText(TextUtils.concat(wodString, m.wodScoring[position]));