Flutter中Text组件Ellipsize遇空格截断异常问题排查与解决
问题原因
Flutter的Text组件在设置softWrap: true且maxLines: 1时,会遵循单词边界断行规则——优先在空格这类单词分隔符处截断文本。当空格后的内容导致整体宽度超出容器时,组件只会保留空格前的部分并添加省略号,不会尝试把空格后的内容也尽可能塞进单行。
解决方案
将Text组件的softWrap属性改为false,文本会强制以单行显示,忽略单词边界限制,尽可能填充容器宽度后再添加省略号,即可实现预期效果。
修改后的代码:
Container( color: blackColorOP11, width: 250.w, child: Text( "1234 567890123kjhkjhgjsadadddah", style: TextStyle( fontWeight: FontWeight.w600, fontFamily: "Poppins", fontSize: 24.sp, color: Colors.white ), softWrap: false, // 修改为false maxLines: 1, overflow: TextOverflow.ellipsis, ), ),
内容的提问来源于stack exchange,提问作者Jaimin Modi
相关产品推荐
相关产品推荐

