第三百七十四回

文章目录

  • 1. 概念介绍
  • 2. 实现方法
    • 2.1 基本用法
    • 2.2 特殊用法
  • 3. 示例代码
  • 4. 内容总结

我们在上一章回中介绍了"分享三个使用TextField的细节"相关的内容,本章回中将介绍如何让Text组件中的文字自动换行.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们在本章回中介绍的Text组件就是用来显示文本的组件,关于该组件的用法可以点击这里查看前面章回中的内容,本章回中主要介绍如何让Text组件中的文本内容自动
换行。这里说的文本主要指长文本,这类文本的长度超过了屏幕宽度或者组件宽度,无法在一行内显示。在实际项目中会遇到这样的场景,因此我们专门来介绍这方面的内容。

2. 实现方法

2.1 基本用法

让长文本自动换行需要使用Text组件的属性,涉及到的属性有三个,详细如下:

  • maxLines属性:主要用来控制文本占用的行数;
  • softWrap属性:主要用来控制是否自动换行,默认值为true;
  • overflow属性:主要用来控制超过长度的文本显示方式,比如显示省略号;
    使用这三个属性后就可以让长文本自动换行显示,不过softWrap属性可以不设置,因为该属性的默认值是true.

2.2 特殊用法

当Text组件处于其它布局组件中时上一小节中介绍的基本用法就不起作用了,这就是Text组件的特殊用法,详细如下:

  • 当Text组件位于Column组件中时,不使用基本用法中的三个属性也会让长文本自动换行;
  • 当Text组件位于Row组件中时,不仅要使用基本用法中的三个属性还需要在它外层加一个Extend组件,这样才会让文本自动换行;
    这两个用法只用文本描述比较抽象,我们将在后面的小节中通过示例代码来演示它们的用法。

3. 示例代码

Column(children: [///列中的长文本可以自动换行const Text( " Text Widget WidgetWidgetWidgetWidgetWidgetWidgetWidget",style: TextStyle(color: Colors.white,fontSize: 16,backgroundColor: Colors.cyan,),),const SizedBox(height: 16,),///行中的长文本不可以自动换行,需要嵌套一个Expander组件const Row(children: [Expanded(child: Text( " Text Widget WidgetWidgetWidgetWidgetWidgetWidgetWidget",maxLines: 2,softWrap: true,overflow: TextOverflow.ellipsis,style: TextStyle(color: Colors.white,fontSize: 16,backgroundColor: Colors.cyan,),),),],),],
),

我们在上面的示代码中演示了基本用法和特殊用法中介绍的内容,基本用法没有单独列出来,而是包含在特殊用法中了,也就是代码中Expander组件中的内容。编译并且
运行上面的程序可以得到下面的运行效果图。035

4. 内容总结

最后我们对本章回的内容做一个全面的总结:

  • 当项目中遇到超过屏幕或者容器宽度的长文本时需要换行显示;
  • 在Text组件中提供了:maxLines,softWrap和overflow三个属性来控制文本自动换行显示;
  • 当Text组件位于Column和Row等布局组件中时需要特殊的用法才能让长文本自动换行显示;
    看官们,与"如何让Text组件中的文字自动换行"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/499663.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode刷题(剑指offer) 46.全排列

46.全排列 给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。 示例 1: 输入:nums [1,2,3] 输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]示例 2: 输入&#…

STM32F103学习笔记(七) PWR电源管理(原理篇)

目录 1. PWR电源管理简介 2. STM32F103的PWR模块概述 2.1 PWR模块的基本工作原理 2.2 电源管理的功能和特点 3. PWR模块的常见应用场景 4. 常见问题与解决方案 1. PWR电源管理简介 PWR(Power)模块是STM32F103系列微控制器中的一个重要组成部分&…

C语言 变量

变量其实只不过是程序可操作的存储区的名称。C 中每个变量都有特定的类型,类型决定了变量存储的大小和布局,该范围内的值都可以存储在内存中,运算符可应用于变量上。 变量的名称可以由字母、数字和下划线字符组成。它必须以字母或下划线开头…

导出数据库表结构到文档中

导出效果: 完整代码: Controller层: import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotatio…

Android Stdio Execution failed for task ‘:app:compileDebugKotlin‘ 报错解决

具体报错信息如下: compileDebugJavaWithJavac task (current target is 1.8) and compileDebugKotlin task (current target is 17)jvm target compatibility should be set to the same Java version.很显然,这是一个版本冲突问题,compile…

云上攻防-云服务篇弹性计算服务器云数据库实例元数据控制角色AK控制台接管

知识点: 1、云服务-弹性计算服务器-元数据&SSRF&AK 2、云服务-云数据库-外部连接&权限提升 章节点: 云场景攻防:公有云,私有云,混合云,虚拟化集群,云桌面等 云厂商攻防:阿里云&am…

Tomcat服务部署

1、安装jdk、设置环境变量并测试 第一步:安装jdk 在部署 Tomcat 之前必须安装好 jdk,因为 jdk 是 Tomcat 运行的必要环境。 1. #关闭防火墙 systemctl stop firewalld systemctl disable firewalld setenforce 02. #将安装 Tomcat 所需软件包传到/opt…

90%电商APP已沦落至无人下载,用户主观意愿——是真正实用性价值!

90%电商APP已沦落至无人下载,用户主观意愿——是真正实用性价值! 文丨微三云营销总监胡佳东,点击上方“关注”,为你分享市场商业模式电商干货。 - 引言:在互联网发展的大时代下,似乎每个月都有新的APP出现…

Linux Shell脚本练习(一)

一、 Linux下执行Shell脚本的方式: 1、用shell程序执行脚本: a、根据你的shell脚本的类型,选择shell程序,常用的有sh,bash,tcsh等 b、程序的第一行#!/bin/bash里面指明了shell类型的,比如#!/…

Programming Abstractions in C阅读笔记:p306-p307

《Programming Abstractions in C》学习第75天,p306-p307总结,总计2页。 一、技术总结 1.Quicksort algorithm(快速排序) 由法国计算机科学家C.A.R(Charles Antony Richard) Hoare(东尼.霍尔)在1959年开发(develop), 1961年发表…

Windows下使用C++调用海康威视SDK获取实时视频流进行检测

目录 准备海康威视的SDK官网下载下载后解压 Vs 2022创建项目创建32位的环境 将相关文件复制到工程目录下工程配置海康威视SDK配置包含目录配置库目录将dll文件添加到环境中在附加依赖项添加如下内容 工程配置OpenCV配置工程配置包含目录配置库目录 测试 准备海康威视的SDK 官网…

位段 详解

目录 位段的声明位段的内存分配位段的跨平台问题 位段的声明 位段的声明和结构是类似的,有两个不同: 位段的成员必须是 int、unsigned int 或signed int位段的成员名后边有一个冒号和一个数字 例如,A是一个位段类型: struct A…