我是旦旦i

V1

2022/06/05阅读:18主题:自定义主题1

什么是StatelessWidget无状态小部件,如何创建无状态小部件

StatelessWidget 无状态小部件的定义

无状态小部件是通过 build 方法嵌套其他的 widget 来构建 UI (用户界面),在构建过程中会递归的构建其嵌套的 widget。

StatelessWidget 简介继承自 Element 类,与 StatelessWidget 相对应,作为其配置数据。

StateLessWidget 用于不需要维护状态的场景,它通常在 build 方法中通过嵌套其他 widget 来构建 UI,在构建过程中会递归的构建其嵌套的 widget。比如一下,创建一个无状态的小部件 EchoText:

import 'package:flutter/material.dart';

void main() {
  runApp(const MaterialApp(
    title: 'My App',
    home: EchoText(text: "Hello world"),
  ));
}

class EchoText extends StatelessWidget {
  final String text;
  final Color textColor;

  const EchoText({Key? key, required this.text, this.textColor = Colors.blue});

  @override
  Widget build(BuildContext context) {
    return Center(
      child: Container(
        color: textColor,
        child: Text(text),
      ),
    );
  }
}
Simulator Screen Shot - iPhone SE (3rd generation) - 2022-06-04 at 16.19.12
Simulator Screen Shot - iPhone SE (3rd generation) - 2022-06-04 at 16.19.12

性能注意事项

无状态小部件的 build 方法通常只在三种情况下被调用:

  1. 小部件第一次插入时
  2. 小部件的父级更改其配置时
  3. 以及它所依赖的 InheritedWidget 更改时

分类:

前端

标签:

前端

作者介绍

我是旦旦i
V1