我有一个搜索字符串,我需要用粗体样式将搜索字符串字符替换为不同的textview字符串。 以下可能代码:
![加载阵列的第一个屏幕] [1] ![在数组中搜索字符串] [2] ![用搜索字符串替换所有字符串textview] [3]
我不想替换所有textview字符串,因为我只想从不同textview字符串的位置加粗特定字符。
![在此处输入图像说明] [4]
我希望这种格式替换样式粗体。
String strlottery =“17659”;
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);
TextView txt3 = (TextView) findViewById(R.id.textView17);
String str=strlottery.replaceAll("1", "<font size=\"16\" color=\"red\"><b>"+"1"+"</b><</font>");
Log.v("Search", str);
Spanned text = Html.fromHtml(str);
txtf.setText(text);
txtS.setText(text);
txtT.setText(text);
txt1.setText(text);
txt2.setText(text);
txt3.setText(text);
这是我的搜索字符串,我想将此字符串搜索到arraylist然后我想在加入arraylist时加粗这些字符。 ArrayList字符串是18758,13660,52798,16514,70679。
但这是用匹配字符粗体样式替换17659字符串的所有Textview字符串。 1879搜索字符串这是替换旧字符串,但我不想要这种类型替换。我只想要以粗体显示特定位置字符
答案 0 :(得分:5)
以下是执行此操作的方法..定义文本的开始和结束,并对文本的一部分执行操作.....欢呼!!!!!!!!
TextView myText = (TextView) findViewById(R.id.scoreboardtitle);
SpannableString text = new SpannableString("Top Scores");
// make "Lorem" (characters 0 to 5) red
text.setSpan(new ForegroundColorSpan(Color.RED), 0, 4, 0);
text.setSpan(new ForegroundColorSpan(Color.rgb(0, 255, 0)), 4, text.length(), 0);
text.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 0, 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
myText.setText(text, BufferType.SPANNABLE);