#string #list #flutter #colors #textspan
Вопрос:
Предположим, вам даны две строки. Один содержит слова, которые нужно раскрасить, а другой содержит абзац. пример:
Список слов =[«корова»,»молоко»,»крупный рогатый скот» ];
Строка абзаца = «Крупный рогатый скот, или коровы (самки) и быки (самцы), являются крупными одомашненными парнокопытными травоядными животными. Они являются выдающимся современным представителем подсемейства Bovinae, являются наиболее распространенными видами рода Bos и чаще всего классифицируются в совокупности как Bos taurus.»;
Мне нужно, чтобы эти слова в абзаце были цветным или ссылочным текстом. помогите пожалуйста
Комментарии:
1. вам нужен
RichText
виджет
Ответ №1:
Оформить Заказ Выделите Текст. Вот небольшой пример того, как вы можете достичь желаемого эффекта.
Map<String, HighlightedWord> words = {
"cow": HighlightedWord(
textStyle: textStyle,
),
"milk": HighlightedWord(
textStyle: textStyle,
),
"cattle": HighlightedWord(
textStyle: textStyle,
),
};
Ваш Текст
TextHighlight(
text: text, // Your text
words: words, // Your highlighted words
);
Ответ №2:
Вам нужно разделить все слова из абзаца, а затем динамически назначить Richtext > TextSpan для каждого слова после проверки из вашего списка.