Flutter中的RichText控件,没有换行

问题:Flutter 中RichText 无法换行?

首先想到的是:softWare设置为true,maxLine设置为2或者更多,overflow设置文字超出屏幕的显示方式,然而这些都不好使。

然后进行百度后:说使用Expanded包裹下RichText,经过测试依旧不好使

最后:再看下嵌套结构,这个布局嵌套了很多Column和Row,于是我使用Expanded包裹下上一层的Column的,神奇就好了

如图所示:

注:请注意看黑色加粗部分代码

Expanded(

    child:Padding(

    padding:EdgeInsets.only(left:10),

    child:Column(

        crossAxisAlignment: CrossAxisAlignment.start, //设置文字左对齐

         children: [

                _title(searchEntityEntity.data[position]),

                _subTitle(searchEntityEntity.data[position]),

      ],

    ),

  ),

),

_title(SearchEntityData item) {

 if (item ==null)return null;

  List spans = [];

  spans.addAll(_keywordTextSpans(item.word, keyword));

  spans.add(TextSpan(

    text:' ' +

    (item.word) +

    ' ' +

    (item.districtname ??'') +

    ' ' +

    (item.zonename ??''),

    style:TextStyle(fontSize:16, color: Colors.grey),

  ));

  return RichText(

    text:TextSpan(children: spans),

    maxLines:4,//最多显示四行

    overflow: TextOverflow.ellipsis,//显示省略号

    softWrap:true,

  );

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容