Flutter 中 Text

130 阅读2分钟

在Flutter中,Text是一个用于显示文本的控件,用于在应用程序界面中显示单行或多行文本内容。Text控件允许开发者设置文本的样式、对齐方式、溢出处理等属性,以满足各种显示需求。

以下是一个详细的介绍,包括Text控件的属性和一个示例代码:

1. 属性:

基本属性:

  • data(String):要显示的文本内容。
  • style(TextStyle):文本样式,用于定义文本的字体、颜色、大小等。
  • textAlign(TextAlign):文本的对齐方式,包括左对齐、右对齐、居中等。
  • textDirection(TextDirection):文本的方向,用于指定文本的排列方向,例如从左到右或从右到左。
  • softWrap(bool):是否自动换行,默认为true,表示文本会自动换行。
  • overflow(TextOverflow):文本溢出时的处理方式,包括裁剪、省略号等。

样式属性:

  • fontSize(double):文本的字体大小。
  • fontWeight(FontWeight):文本的字重,用于定义文本的粗细程度。
  • fontStyle(FontStyle):文本的字体风格,包括正常、斜体等。
  • color(Color):文本的颜色。
  • letterSpacing(double):字符间的间距。
  • wordSpacing(double):单词之间的间距。
  • fontFamily(String):文本的字体系列。

2. 示例代码:

下面是一个简单的示例代码,演示了如何在Flutter应用中使用Text控件:

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Text Example'),
        ),
        body: Center(
          child: Text(
            'Hello, Flutter!',
            style: TextStyle(
              fontSize: 24,
              fontWeight: FontWeight.bold,
              fontStyle: FontStyle.italic,
              color: Colors.blue,
              letterSpacing: 2,
              wordSpacing: 5,
              fontFamily: 'Roboto',
            ),
            textAlign: TextAlign.center,
            softWrap: true,
            overflow: TextOverflow.ellipsis,
          ),
        ),
      ),
    );
  }
}

在这个示例中,我们创建了一个简单的Flutter应用,包含了一个带有标题的AppBar和一个居中显示的Text控件。Text控件中包含了一段文本“Hello, Flutter!”,并设置了一系列样式和属性:

  • 文本样式设置为24号字体大小、粗体、斜体、蓝色、字符间距为2、单词间距为5、字体为Roboto。
  • 文本的对齐方式设置为居中对齐。
  • 设置了自动换行。
  • 设置了文本溢出时采用省略号的方式处理。

通过设置Text控件的不同属性,开发者可以实现各种不同样式和布局的文本显示效果,满足不同的设计需求。