17、Flutter StatelessWidget 、 StatefulWidget
StatefulWidget实现一个计数器的功能
//StatefulWidget有状态的组件
class HomePage1 extends StatefulWidget {
HomePage1({super.key}); @override
State<HomePage1> createState() => _nameState();
} class _nameState extends State<HomePage1> {
int _countNum = 0;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("这是导航栏")),
body: Center(child:
Column(
mainAxisAlignment:MainAxisAlignment.center,
children: [
Text("${_countNum}",style: Theme.of(context).textTheme.headline1,),
ElevatedButton(onPressed: () {
setState(() { //改变值 并且重新执行
_countNum ++;
}); print("打印${_countNum}");
},
child: const Text("增加",style: TextStyle(fontSize: 10),),) ],)),
);
}
}
StatefulWidget实现一个动态列表
//StatefulWidget有状态的组件
class HomePage2 extends StatefulWidget {
const HomePage2({super.key}); @override
State<HomePage2> createState() => _HomePage2State();
} class _HomePage2State extends State<HomePage2> {
List<String> _list = [];
int _number = 0; //定义数组
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text("这是导航栏")),
floatingActionButton: FloatingActionButton(
onPressed: () {
//改变数据必须加上
setState(() {
_number++;
this._list.add("我是一个列表$_number");
});
},
child: const Icon(Icons.add),
),
body: ListView(
children: _list.map((v) {
return ListTile(
title: Text(v),
);
}).toList()),
);
}
}
17、Flutter StatelessWidget 、 StatefulWidget的更多相关文章
- Flutter学习笔记(16)--Scaffold脚手架、AppBar组件、BottomNavigationBar组件
如需转载,请注明出处:Flutter学习笔记(15)--MaterialApp应用组件及routes路由详解 今天的内容是Scaffold脚手架.AppBar组件.BottomNavigationBa ...
- 【Flutter 实战】动画序列、共享动画、路由动画
老孟导读:此篇文章是 Flutter 动画系列文章第四篇,本文介绍动画序列.共享动画.路由动画. 动画序列 Flutter中组合动画使用Interval,Interval继承自Curve,用法如下: ...
- 5、Flutter 实现 ViewPager、bottomNavigationBar 界面切换
1.前言 首先我们想一下,如果在 Android 中实现 布局切换,通常的思路是: 做一个 viewpager 一组 Fragment 每个 Fragment 绑定一个 xml 最后填充至 viewp ...
- Flutter 中的普通路由、普通路由传值、 命名路由、命名路由传值
一.Flutter 中的路由 Flutter 中的路由通俗的讲就是页面跳转.在 Flutter 中通过 Navigator 组件管理路由导航.并提供了管理堆栈的方法.如:Navigator.push ...
- 【译】Java、Kotlin、RN、Flutter 开发出来的 App 大小,你了解过吗?
现在开发 App 的方式非常多,原生.ReactNative.Flutter 都是不错的选择.那你有没有关注过,使用不同的方式,编译生成的 Apk ,大小是否会有什么影响呢?本文就以一个最简单的 He ...
- Flutter 即学即用系列博客——05 StatelessWidget vs StatefulWidget
前言 上一篇我们对 Flutter UI 有了一个基本的了解. 这一篇我们通过自定义 Widget 来了解下如何写一个 Widget? 然而 Widget 有两个,StatelessWidget 和 ...
- 用Flutter开发的跨平台项目,完美运行在Android和IOS上,Material简洁风格,包括启动页、引导页、注册、登录、首页、体系、公众号、导航、项目,还有漂亮的妹子图库,运行极度流畅,结构清晰,代码规范,值得拥有
Flutter学习资源汇总持续更新中...... Flutter官方网站 Flutter中文网 wendux的Flutter实战 Flutter官方exampleflutter_gallery 阿里巴 ...
- 移动端跨平台方案对比:React Native、weex、Flutter
跨平台一直是老生常谈的话题,cordova.ionic.react-native.weex.kotlin-native.flutter等跨平台框架百花齐放,颇有一股推倒原生开发者的势头. 为什么我们需 ...
- 最火移动端跨平台方案盘点:React Native、weex、Flutter
1.前言 跨平台一直是老生常谈的话题,cordova.ionic.react-native.weex.kotlin-native.flutter等跨平台框架的百花齐放,颇有一股推倒原生开发者的势头. ...
- ubuntu15.4、16.4、17.4设置nginx自启动
ubuntu15.4.16.4.17.4设置nginx自启动记录个小问题,备忘录.花了大半天的时间研究这个,网上大多ubuntu.centos的配置nginx开机自启的都是之前的 Upstart/Sy ...
随机推荐
- 多源异构数据信息的融合方式0 - Dempster/Shafer 证据理论(D-S证据理论)
Dempster/Shafer 证据理论(D-S证据理论)的大体内容如下: 一.简介: 在理论中,由互不相容的基本命题组成的完备集合Θ称为识别框架,表示对于某一问题的所有可能答案,但是只有一个答案是正 ...
- 一个vuepress配置问题,引发的js递归算法思考
前言 这两天在尝试用语雀+ vuepress + github 搭建个人博客. 小破站地址 :王天的 web 进阶之路 语雀作为编辑器,发布文档推送 github,再自动打包部署,大概流程如下. 问题 ...
- Kubernetes文档支持的版本
简介 https://kubernetes.io/zh-cn/docs/ 官方中文网站一共是可以阅读5个k8s版本的文档.这5个版本包括k8s最新版和最近的4个版本.例如当前最新版是1.28,那么文档 ...
- Unity学习笔记--入门
Unity引擎学习 入门: Unity中的坐标系: 左手坐标系(z轴正方向向里面) x轴:平行屏幕向右正方向 y轴:平行屏幕向上正方向 Z轴:垂直屏幕向内为正方向 [补]openGL是右手坐标系 Di ...
- Sealos 云操作系统一键集成 runwasi,解锁 Wasm 的无限潜力
WebAssembly (通常缩写为 Wasm) 是一种为网络浏览器设计的低级编程语言.它旨在提供一种比传统的 JavaScript 更快.更高效的方式来执行代码,以弥补 JavaScript 在性能 ...
- go基础-泛型
概述 在强类型变成语言中,类型是确定不可变,如函数入参是确定类型.链表元素是确定类型,这极大限制了函数功能.也有些解决方案,为每种类型都实现一版函数,会导致大量重复代码:使用类型转换,使用特殊形参(如 ...
- Java笔记——常用类
一.API概述 JDK中提供的各种功能的Java类 二.Object类 概述 类层次结构的根类 所有类都直接或间接的继承自该类 Class Object是类object结构的根.每个Class都有ob ...
- MySQL-安全更新参数
版权声明:原创作品,谢绝转载!否则将追究法律责任. ----- 作者:kirin 注意! 生产环境中,updata必须要加where条件 1.开启安全功能,会提示你加where,不加会提示语法不正确. ...
- [CF403E]Two Rooted Trees
Two Rooted Trees 题面翻译 题目描述 你有两棵有根树,每棵树都有 \(n\) 个结点.不妨将这两棵树上的点都用 \(1\) 到 \(n\) 之间的整数编号.每棵树的根结点都是 \(1\ ...
- [GDOI22pj2D] 机器人
第四题 机器人 提交文件: robot.cpp 输入文件: robot.in 输出文件: robot.out 时间空间限制: 3 秒, 512 MB 刚上初一的小纯特别喜欢机器人,这周末,她报名了学校 ...