StatelessWidget
StatelessWidget用于不需要维护状态的场景,它通常在build方法中通过嵌套其它Widget来构建UI,在构建过程中会递归的构建其嵌套的Widget。
1 import 'package:flutter/material.dart'; 2 3 class Echo extends StatelessWidget { 4 const Echo({ 5 Key key, 6 @required this.text, this.backgroundColor:Colors.red, 7 }):super(key:key); 8 9 final String text; 10 final Color backgroundColor; 11 12 @override 13 Widget build(BuildContext context) { 14 return Center( 15 child: Container( 16 color: backgroundColor, 17 child: Text(text), 18 ), 19 ); 20 } 21 22 } 23 24 // 按照惯例,widget的构造函数参数应使用命名参数,命名参数中的必要参数要添加@required标注,这样有利于静态代码分析器进行检查。 25 // 另外,在继承widget时,第一个参数通常应该是Key,另外,如果Widget需要接收子Widget,那么child或children参数通常应被放在参数列表的最后。 26 // 同样是按照惯例,Widget的属性应尽可能的被声明为final,防止被意外改变。