Я пытаюсь поместить цвет и полужирным шрифтом слово, соответствующее слову из предложения в ArrayList items/value. что я сделал до сих пор, как показано ниже ... поэтому у меня есть переменная String, называемая фильтром «Hello». Теперь я хочу итерации через ArrayList itemList и найти «Hello» из элементов ArrayList и сделать его полужирным и синим.Сделать текст полужирным шрифтом в списке для заданного слова динамически
String filter = "Hello";
String itemValue = "I just want to say Hello world! Hello";
itemList = new ArrayList<String>();
for(int i = 0; i<10; i++)
{
itemList.add("I just want to say Hello world! Hello");
}
sentence = new ArrayList<String>();
for(int j=0; j<itemList.size(); j++)
{
int startPos = itemList.get(j).toString().toLowerCase(Locale.US).indexOf(filter.toLowerCase(Locale.US));
int endPos = startPos + filter.length();
if (startPos != -1) // This should always be true, just a sanity check
{
Spannable spannable = new SpannableString(itemValue);
ColorStateList blueColor = new ColorStateList(new int[][] { new int[] {}}, new int[] { Color.BLUE });
TextAppearanceSpan highlightSpan = new TextAppearanceSpan(null, Typeface.BOLD, -1, blueColor, null);
spannable.setSpan(highlightSpan, startPos, endPos, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
tv.setText(spannable);
sentence.add(itemValue);
ListView lv = (ListView)findViewById(R.id.listView1);
//ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
// android.R.layout.simple_list_item_1, android.R.id.text1, sentence);
MyPerformanceArrayAdapter adapter = new MyPerformanceArrayAdapter(this, spannable, counterArrayList);
lv.setAdapter(adapter);
}
else
tv.setText(itemValue);
}
ее не работает пожалуйста, вы можете помочь мне
Вы должны использовать адаптер пользовательских ListView – Salmaan
MyPerformanceArrayAdapter это мой пользовательский ListView адаптер. Как я могу это сделать, вы можете мне помочь – Jack