在最近flutter页面改造过程中,发现通过Contail包裹Text控件设置上下padding时,在华为魅族和vivo等手机上并没有居中展示,所以通过查看控件属性,得以解决此类问题


可以看到上面的在华为手机上明显偏下了

                Container(padding: EdgeInsets.only(left: 4,top: 2,bottom: 2,right: 4),color: Colors.blue,child: Text('测试标题111'),),Container(color: Colors.blueAccent,padding: EdgeInsets.only(left: 4,top: 2,bottom: 2,right: 4),margin: EdgeInsets.only(top: 4),child: ExText('测试标题111',TextStyle(fontSize: 14, color: Colors.redAccent),maxLines: 2,textAlign: TextAlign.left,),),

下面是代码

/// 修正不同手机上leading和不居中的问题
class ExText extends StatelessWidget {final String data; // 展示文案final TextStyle textStyle; // 文字样式 由于字体大小和颜色是必须的 所以此处为必穿参数final int maxLines; //最大行数final double height; // 文本高度 默认1.1更居中 但随着字体变大 这个值应该趋于1.0 允许手动调节final TextOverflow overflow; //裁剪模式final double textMaxWidth; // 文字能显示的最大宽度 如果 为autoFixSize则需要指定该值final TextAlign textAlign; // 对齐方式ExText(this.data,this.textStyle, {this.maxLines = 1,this.height = 1.1,this.overflow = TextOverflow.ellipsis,this.textMaxWidth = double.infinity,this.textAlign = TextAlign.center});@overrideWidget build(BuildContext context) {// 如果需要修正大小return Text(data,maxLines: maxLines,textAlign: textAlign,style: textStyle,strutStyle: StrutStyle(fontSize: textStyle.fontSize,fontWeight: textStyle.fontWeight,leading: 0,height: height,// 1.1更居中forceStrutHeight: true, // 关键属性 强制改为文字高度),textHeightBehavior: TextHeightBehavior(// 基线 发现不设置也能行applyHeightToFirstAscent: false,applyHeightToLastDescent: false),);}}

关键点也已经标出。
也可以引入我已经打包好的flutter插件
https://pub.flutter-io.cn/packages/flutter_ex_widget
上面有一些比较通用的功能控件

Flutter Text控件在不同手机上不居中的问题相关推荐

  1. Flutter 系列文章:Flutter Text 控件介绍

    flutter Text 控件介绍 一.使用方法 构造方法 设置普通的text Text("") Text(this.data, {Key key,this.style,this. ...

  2. Flutter 常用控件使用详解

    目录 配置 Flutter常用控件 Text TextField组件 Container Image GridView Row水平组件 Column垂直布局 Stack层叠布局 参考 配置 由于Flu ...

  3. Flutter 布局控件完结篇

    本文对Flutter的29种布局控件进行了总结分类,讲解一些布局上的优化策略,以及面对具体的布局时,如何去选择控件. 1. 系列文章 Flutter 布局详解 Flutter 布局(一)- Conta ...

  4. [译][Tkinter 教程10] Text 控件

    已获原作者授权. 原系列地址: Python Tkinter 简介及简例 Text 控件用来显示多行文本. Tkinter 的 Text 控件很强大, 很灵活, 可以实现很多功能. 虽然这个控件的主要 ...

  5. 在MFC中使用Static text控件显示消息

    1-新建一个MFC对话框xxDlg,从工具栏拖一个Static text控件到面板上,右键编辑属性,将ID改为IDC_ShowMsg 2-打开类视图,在CxxDlg上右键-->添加成员函数voi ...

  6. Flutter 系列文章:Flutter Icon 控件介绍

    Flutter Icon 控件介绍 一.使用方法 构造方法 Icon(this.icon, {Key key,this.size,this.color,this.semanticLabel,this. ...

  7. python tkinter 窗口禁止编辑_tkinter的text控件,绑定事件后不能编辑了

    tkinter的text控件,又有新的问题 DateCtrl.py from tkinter import * import tkinter.font as tkFont import calenda ...

  8. matlab axes控件,PushButton控件,Axes控件,Text控件以及imshow和image函数

    -- PushButton控件 -- PushButton控件是按钮的意思,它就相当于键盘上的每个键一样,按一下输入一个信号,在GUI中就是按一下执行该控件的回调函数. PushButton的属性: ...

  9. Static Text控件响应函数方法

    1.修改Static Text控件ID: 2.添加Static Text控件事件处理函数: 3.修改Static Text控件属性Notify为True: 静态文本控件在默认状态下是不发送通告消息的, ...

  10. duilib 修复Text控件无法设置宽度的bug,增加自动加算宽度的属性

    转载请说明原出处,谢谢~~: 今天有朋友反映CTextUI控件无法设置宽度,于是修复了这个bug,顺便给Text控件增加了一个自动计算宽度的属性,描述如下 <Attribute name=&qu ...

最新文章

  1. MySQL 学习笔记(9)— 事务控制语句、事务属性以及并发和隔离级别
  2. AI一分钟 | 马斯克再放豪言:我要造的AI的芯片“全球最棒”;刚上路就被叫停,可能是美国对快递机器人最严厉的打击
  3. ubuntu12.04LTS 安装eclipse和cdt
  4. python(1):数据类型/string/list/dict/set等
  5. JS解析json数据并将json字符串转化为数组的实现方法
  6. python如何自动打印_利用Python每天自动打印练习题
  7. Android之error: ‘const struct JNINativeInterface‘ has no member named ‘callVoidMethod‘
  8. 多模态语义分析_情感分析、多模态NLP、多语言翻译...这场NLP知识盛宴不可错过!...
  9. 【Tensorflow】小白入门实战基础篇(下)
  10. 为什么python除法结果会有小数点0_关于python:为什么整数除法会在许多脚本语言中向下取整?...
  11. 计算机x线影像ppt,计算机X线摄影ppt课件
  12. 教育为什么重要 大数据_为什么开放数据在教育中很重要
  13. python协同过滤算法_【知识发现】基于用户的协同过滤推荐算法python实现
  14. 矩阵乘法,输出结果矩阵
  15. matlab图像频谱分析代码_信号频域分析方法的理解(频谱、能量谱、功率谱、倒频谱、小波分析)...
  16. 我的团长我的团第十六集
  17. 思考伯努利试验的两种组合思想
  18. 项目管理知识体系指南(五)项目时间管理
  19. 内蒙古自治区高分二号卫星影像获取/高分一号卫星影像
  20. 【JMeter】分布式远程启动

热门文章

  1. JavaFX游戏制作:瓦片地图绘制
  2. C语言波形实现三角波和正弦波
  3. lammps案例:空位缺陷对石墨烯力学性能影响模拟
  4. u盘efi分区删除方法
  5. HTML注册表单的页面制作
  6. 亲密爱人:《亲密关系》读书笔记
  7. mysqldump导出数据备份 --set-gtid-purged=OFF(简明!!)
  8. 抖音极速版自动运行脚本
  9. 企业为什么要做微信公众号?
  10. A.7链表练习题——集合的交差并