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),
      ),
    );
  }
}
相关推荐
顾林海1 小时前
Android编译插桩黑科技:ReDex带你给App"瘦个身,提个速"
android·面试·性能优化
maki0771 小时前
VR大空间资料 04 —— VRAF使用体验和源码分析
android·vr·虚幻·源码分析
消失的旧时光-19434 小时前
Kotlin 判空写法对比与最佳实践
android·java·kotlin
AGG_Chan4 小时前
flutter专栏--深入了解widget原理
开发语言·javascript·flutter
锅拌饭4 小时前
Android Handler(一) 同步屏障泄露导致页面假死
android
锅拌饭4 小时前
Android Handler(二) 同步屏障泄露检测
android
手机不死我是天子6 小时前
《Android 核心组件深度系列 · 第 3 篇 BroadcastReceiver》
android·android studio
用户17345666963476 小时前
Android 日志库:高性能压缩加密日志系统
android
墨客希6 小时前
通俗易懂的理解Vue.js
vue.js·flutter