Flutter常用组件(Widget)解析-Text

时间:2022-10-19 12:51:00

单一格式的文本。

文本组件是以字符串形式显示的单一格式,这个文本字符串可以是多行显示也可以是单独一行显示,主要取决于你的布局限制。

这样式内容是可选择的,如果你省略了,则会使用文本的默认样式来显示。如果给定的style的文本继承属性是true,即默认的,则这些给定的样式会与那些默认的文本样式合并。这种合并的属性非常有用,比如,让文字粗体显示,我们可以使用默认的字体和大小。

child: new Text(
'Hello, How are you?',
textAlign: TextAlign.center,
overflow: TextOverflow.ellipsis,
style: TextStyle(fontWeight: FontWeight.bold),
),

Flutter常用组件(Widget)解析-Text

我们也可以使用富文本编辑器,让一段文本通过使用不同的TextSpan显示不同的样式。比如我们让"Hello beautiful world"的每个单词都显示不同的样式:

const Text.rich(
TextSpan(
text: 'Hello', // default text style
children: <TextSpan>[
TextSpan(text: ' beautiful ', style: TextStyle(fontStyle: FontStyle.italic,fontSize: 48.0)),//斜体
TextSpan(text: 'world', style: TextStyle(fontWeight: FontWeight.bold,fontSize: 36.0)),//粗体
],
),
)

Flutter常用组件(Widget)解析-Text

当我们对一个文本的行数有要求时,就需要用到maxLines属性了:

 child: new Text(
'Hello, How are you?Hello, How are you?Hello, How are you?Hello, How are you?',
textAlign: TextAlign.center,
overflow: TextOverflow.ellipsis,
style: TextStyle(fontWeight: FontWeight.bold,fontSize: 48.0),
maxLines: 2,
),

Flutter常用组件(Widget)解析-Text

 1、textAlign

文本对齐方式

  • center: 文本以居中形式对齐。
  • left:左对齐,经常使用,让文本居左进行对齐,效果和start一样。
  • right :右对齐。
  • start:以开始位置进行对齐,类似于左对齐。
  • end: 以为本结尾处进行对齐,不常用。有点类似右对齐。

2、maxLines

设置最多显示的行数。用法: maxLines: int整数

3、overflow

这个属性是用来设置溢出文本的样式,通常与maxLines配合一起使用。有以下几个属性值:

  • clip 超出文本框范围内的文字直接切断。显得很生硬,没有过度,不友好
  • ellipsis 使用省略号来显示溢出的文本,用的比较多的一种效果
  • fade 对超出文本内容的部分会有一个渐变消失的效果,这个不是左右渐变的效果,而是下面部分渐变的效果。可以看例子:
     'Hello, How are you? I am fine. Thank you',
textAlign: TextAlign.center,
overflow: TextOverflow.fade,
style: TextStyle(fontWeight: FontWeight.bold,fontSize: 48.0),
maxLines: 1,

Flutter常用组件(Widget)解析-Text

可以从上图看到,文本下面部分是有阴影效果的。

4、style

style属性的内容算是比较多的,通常就是我们对文字样式的设置

Bold

粗体显示

Text(
'Hello, How are you? I am fine. Thank you',
 style: TextStyle(fontWeight: FontWeight.bold),
)

Italics

斜体显示

child: Text(
'Hello, How are you? I am fine. Thank you',
style: TextStyle(fontStyle: FontStyle.italic),
),

Opacity和Color

透明度和字体颜色

child: Text(
'Hello, How are you? I am fine. Thank you',
style: TextStyle(color: Colors.red),//红色字体
),
child: Text(
'Hello, How are you? I am fine. Thank you',
style: TextStyle(color: Colors.red.withOpacity(0.5)),//透明度50%的红色字体
),

Size

字体大小

child: Text(
'Hello, How are you? I am fine. Thank you',
style: TextStyle(color: Colors.red.withOpacity(0.5),fontSize: 48.0),
),

Line height

行高

child: Text(
'Hello, How are you? I am fine. Thank you',
style: TextStyle(color: Colors.red.withOpacity(0.5),fontSize: 48.0,height: 5.0),
),

5、以上就是比较常用的文本组件的属性,更多更详细的可以参考网址:一键送达

Flutter常用组件(Widget)解析-Text的更多相关文章

  1. Flutter常用组件(Widget)解析-ListView

    一个可滚动的列表组件 不管在哪,列表组件都尤为重要和常用. 首先来看个例子: import 'package:flutter/material.dart'; void main () => ru ...

  2. Flutter常用组件(Widget)解析-Container

    一个组件它往往包含了一些常见的painting, positioning和sizing这样的小部件. Container相当于我们常用的div,在Flutter中用的非常多,现在来看看Containe ...

  3. Flutter常用组件(Widget)解析-Scaffold

    实现一个应用基本的布局结构. 举个栗子: import 'package:flutter/material.dart'; void main() => runApp(MyApp()); clas ...

  4. Flutter常用组件(Widget)解析-Image

    显示图片的组件 以下是几种加载图片路径方式: Image.asset 加载asset项目资源中的文件 Image.network 加载网络资源图片,通过url加载 Image.file 加载本地文件中 ...

  5. Flutter 常用组件

    无状态组件(StatelessWidget)是不可变的,这意味着它的属性不能改变,所有的值都是最终的. 有状态组件(StatefulWidget)持有的状态可能在Widget生命周期中发生变化.实现一 ...

  6. Flutter常用布局组件

    Flutter控件本身通常由许多小型.单用途的控件组成,结合起来产生强大的效果,例如,Container是一种常用的控件,由负责布局.绘画.定位和大小调整的几个控件组成,具体来说,Container是 ...

  7. flutter Container组件和Text组件

    在开始之前,我们先写一个最简单的入口文件:     后面,都是在这个结构的基础上面完成的. 由于Container组件和Text组件都是写在body里面的,所以下面,先将body抽离成一个组件的形式. ...

  8. Flutter 基础组件:Widget简介

    概念 在Flutter中几乎所有的对象都是一个Widget.与原生开发中"控件"不同的是,Flutter中的Widget的概念更广泛,它不仅可以表示UI元素,也可以表示一些功能性的 ...

  9. Ext 常用组件解析

    Ext 常用组件解析 Panel 定义&常用属性 //1.使用initComponent Ext.define('MySecurity.view.resource.ResourcePanel' ...

随机推荐

  1. 浏览器中CSS的BUG

    对于web2.0的过度,请尽量用xhtml格式写代码,而且DOCTYPE 影响 CSS 处理,作为W3C的标准,一定要加 DOCTYPE声明. 其它请参考:CSS hack 针对IE6,IE7,fir ...

  2. javascript读取xml文件

    什么是 XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 标签没 ...

  3. 校赛E题递归形式

    #include<stdio.h> #include<string.h> using namespace std; typedef long long ll; ][]; ,,, ...

  4. 手势识别官方教程&lpar;2&rpar;识别常见手势用GestureDetector+手势回调接口/手势抽象类

    简介 GestureDetector识别手势. GestureDetector.OnGestureListener是识别手势后的回调接口.GestureDetector.SimpleOnGesture ...

  5. 输入一个单向链表,输出该链表中倒数第K个结点

    输入一个单向链表,输出该链表中倒数第K个结点,具体实现如下: #include <iostream> using namespace std; struct LinkNode { publ ...

  6. Unity渲染优化中文翻译(一)——定位渲染问题

    最近有一点个人的时间,尝试一下自己翻译一下英文的 Optimizing graphics rendering in Unity Games, 这儿附上英文链接: 个人英文水平有限,unity图像学知识 ...

  7. MongoD 语法

    MongoD 语法 1.常用 1 .查看有哪些库 > show dbs; admin 0.000GB config 0.000GB local 0.000GB 2 .当前库,只存在于内存中 &g ...

  8. unresolved external symbol boost&colon;&colon;throw&lowbar;exception

    使用boost库,VS生成的时候一直报错, error LNK2019: 无法解析的外部符号 "void __cdecl boost::throw_exception(class std:: ...

  9. Java EE之Hibernate异常总结【5】java&period;lang&period;*Error&lbrack;栈溢出&rsqb;

    Exception in thread "main" java.lang.*Error at java.lang.reflect.InvocationTar ...

  10. day10-高阶函数

    高阶函数 高阶函数:就是把函数当成参数传递的一种函数,例如: def add(x,y,f): return f(x)+f(y) print(add(-8,11,abs)) 结果: 19 解释: 调用a ...