1

我是 android 新手,我正在尝试在 arraylist 字符串中的特定字符处替换粗体样式的字符。我正在做的是:

String myName = "76492";

这是我的搜索字符串,我想在数组列表中搜索这个字符串,然后我想在arraylist.Arraylist字符串为 78758,3660,56798,6514,90679 时将这些字符加粗。

TextView txtf = (TextView)findViewById(R.id.textView4);
TextView txtS = (TextView) findViewById(R.id.textView5);                                    
TextView txtT = (TextView)findViewById(R.id.textView6);
TextView txt1 = (TextView) findViewById(R.id.textView9);
TextView txt2 = (TextView) findViewById(R.id.textView13);

String str= myName.replaceAll("6", "<b>6</b>");                                 
Spanned text = Html.fromHtml(str);
txtf.setText(text);
txtS.setText(text);
txtT.setText(text);
txt1.setText(text);
txt2.setText(text);

但这是用匹配字符粗体样式的76492Textview字符串替换所有字符串。1879 搜索字符串这是替换旧字符串,但我不希望这种类型替换。我只希望以粗体样式更改特定位置字符

4

2 回答 2

2
<style name="boldText">
    <item name="android:textStyle">bold</item>

</style>

将此代码段粘贴到您的 style.xml 中,该文件位于布局下的 valuse 文件夹中。

txtf.setTextAppearance(this, R.style.boldText);

这行代码是为您的文本视图显示为粗体。

于 2012-10-10T05:54:30.743 回答
1

使用跨度。然后,您可以指定字符串的一部分并分配您想要的任何格式或颜色。看看这个。编辑:为了澄清:使用跨度,您不会替换字符。使用一些字符串方法来查找要更改为粗体的字符的位置,并在这些位置上创建一个跨度并将粗体格式分配给该跨度。

于 2012-10-10T06:13:19.643 回答