Flutter 优化:布局时只管用 const

源码 2024-9-29 19:06:43 116 0 来自 中国
一、阐明

看到许多 Flutter 构建 UI 时会比力多用到 const,为什么不直接创建实例,而要在前端加一个 const 呢 ?
child: const Text('加 const'); VS child: Text('不加 const');二、只管用 const 的来由

当我们调用 setState() 后,Flutter 会调用 build 方法,而且 rebuild 此中的每一个组件,制止全部重新构建的方法就是用 const。
假如一个组件更新频仍(好比动画),用 const 后可以淘汰垃圾接纳。
三、示例

class _MyWidgetState extends State<MyWidget> {  String title = "Title";  @override  Widget build(BuildContext context) {    return Scaffold(      appBar: AppBar(        title: Text(title),      ),      body: Column(        children: <Widget>[          const Text("Text 1"),          const Padding(            padding: const EdgeInsets.all(8.0),            child: const Text("Another Text widget"),          ),          const Text("Text 3"),        ],      ),      floatingActionButton: FloatingActionButton(        child: const Icon(Icons.add),        onPressed: () {          setState(() => title = 'New Title');        },      ),    );  }}当你点击 FloatingActionButton 调用 setState 后,全部 const 界说的组件都不会重新构建
您需要登录后才可以回帖 登录 | 立即注册

Powered by CangBaoKu v1.0 小黑屋藏宝库It社区( 冀ICP备14008649号 )

GMT+8, 2024-11-21 20:27, Processed in 0.168930 second(s), 32 queries.© 2003-2025 cbk Team.

快速回复 返回顶部 返回列表