Flutter开发 StatelessWidget与StatefulWidget基本了解

StatelessWidget

StatelessWidget应用于Widget不会再运行时发生变化的场景。

dart 复制代码
void main() {
  runApp(MyPage());
}

class MyPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: Text("标题栏")),
        body: Center(child: Text("2222222")),
      ),
    );
  }
}

StatefulWidget

应用于Widget会在运行时发生变化的场景。例如,从网路请求数据进行展示。

1.StatefulWidget要与State一起使用,StatefulWidget的createState方法,要返回一个State。

2.更新数据要setState方法

下面这个例子,点击button,修改文本内容。

dart 复制代码
void main() {
  runApp(MyPage());
}

class MyPage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: FulPage(),
    );
  }
}

class FulPage extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return MyState();
  }
}

class MyState extends State {
  String info = "默认文字";


  void  showInfo(){

    setState(() {

      info ="变变变";
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(title: Text("修改文字")),
      body: Text(info),
      floatingActionButton: FloatingActionButton(
        onPressed: () {

          showInfo();
        },
        child: Icon(Icons.print),
      ),
    );
  }
}
相关推荐
LZQ <=小氣鬼=>19 分钟前
Flutter简单讲解
flutter
AirDroid_cn1 小时前
手机防沉迷新招:安卓手机如何成为管理iPhone的遥控器?
android·ios·智能手机·iphone·ipad
狂浪天涯2 小时前
Android 16 显示系统 | 从View 到屏幕系列 - 6 | 提交 GraphicBuffer 到 SurfaceFlinger
android·架构
LZQ <=小氣鬼=>2 小时前
Flutter 事件总线 Event Bus
flutter·dart·事件总线·event bus
清霜之辰3 小时前
Android 区块链 + CleanArchitecture + MVI 架构实践
android·架构·区块链·mvi·architecture·clean
深盾安全5 小时前
Android SO导出符号的深度解析与安全防护指南
android
顾林海6 小时前
Android安全防护:Runtime 调试检测与反制手段
android·安全·面试
什么半岛铁盒6 小时前
MySQL 约束知识体系:八大约束类型详细讲解
android·数据库·mysql
丐中丐9996 小时前
Android系统中如何在Native层调用java实现的系统服务
android·操作系统