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),
      ),
    );
  }
}
相关推荐
problc4 分钟前
Flutter桌面应用实战:Windows系统代理切换工具开发
windows·flutter
hellokai34 分钟前
React Native新架构源码分析
android·前端·react native
真西西38 分钟前
Koin:Kotlin轻量级依赖注入框架
android·kotlin
程序员老刘2 小时前
Cursor vs Claude Code vs AS+AI助手:谁才是客户端的编程神器?
flutter·ai编程·客户端
CYRUS_STUDIO3 小时前
手把手教你改造 AAR:解包、注入逻辑、重打包,一条龙玩转第三方 SDK!
android·逆向
CYRUS_STUDIO4 小时前
Android 源码如何导入 Android Studio?踩坑与解决方案详解
android·android studio·源码阅读
前端赵哈哈5 小时前
初学者入门:Android 实现 Tab 点击切换(TabLayout + ViewPager2)
android·java·android studio
耳東陈5 小时前
【重磅发布】flutter_chen_updater - 版本升级更新
flutter
一条上岸小咸鱼8 小时前
Kotlin 控制流(二):返回和跳转
android·kotlin
Jasonakeke8 小时前
【重学 MySQL】九十二、 MySQL8 密码强度评估与配置指南
android·数据库·mysql