Flutter RichText或其他动态内容标记

我正在尝试显示在应用程序中动态创建的格式化文本。这是差异计算的结果,我看不到RichText或任何降价格式如何工作。似乎似乎要在框架中显示,似乎并不是要嵌入HTML。

该代码显示该代码的静态表示。我需要能够使用对象列表并创建相应的TextSpans数组。我不确定是否有办法做到这一点。

我应该补充说,如果要在MS Word中编辑文本,我会看到想要的样式:添加的颜色为绿色,删除的颜色为红色并穿过。这部分使用RichText样式很容易,但Markdown不支持。

//This list of objects has the data I use will use to create the TextSpans.

  List<DiffString> diffOut = diff(
    oldStr,newStr," ",).pieces;

//

RichText(
              text: TextSpan(
                children: <TextSpan>[

                  TextSpan(
                    text: 'Hello ',style: normalStyle,),TextSpan(
                    text: 'added',style: addedStyle,TextSpan(
                    text: 'deleted',style: deletedStyle,TextSpan(
                    text: ' \n\n',//TextSpan(text: 'default is messed up'),],
lrslrslrs 回答:Flutter RichText或其他动态内容标记

pskink回答了我的问题,但随后将其删除,因此我将其发布在这里。是的,只需要像他说的那样映射它即可。谢谢!

/////////这里:

您所需要的只是由差异计算方法创建的TextSpans列表,并将其作为子元素传递:myListOfTextSpanDiffs-例如:var myListOfTextSpanDiffs = diffOut.map(...)。toList()

本文链接:https://www.f2er.com/3149534.html

大家都在问