Flutter有状态组件使用详解

 更新时间:2022年01月16日 16:12:48   作者:s-010101  
这篇文章主要为大家详细介绍了Flutter有状态组件的使用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

有状态组件

flutter 主要有分有状态组件 StatefulWidget 和无状态组件 StatelessWidget,前面我们使用到的都是无状态组件,没有让页面上的内容发生变化,当我们有需要对页面的内容进行动态修改的时候 ,如果我们使用无状态组件,页面上的内容就不会被更新,这时需要用到有状态组件。
有状态组件就是继承了StatefulWidget的组件,内容更改时调用
setState(() { 更改的内容});

// ignore_for_file: prefer_const_constructors, prefer_collection_literals, deprecated_member_use, unused_local_variable, must_be_immutable, prefer_const_literals_to_create_immutables

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Flutter Demo'),
        ),
        body: const HomeContent(),
      ),
      theme: ThemeData(
        primarySwatch: Colors.yellow,
      ),
    );
  }
}
//有状态自定义组件有两个类,我们需要返回的写在第二个类中
class HomeContent extends StatefulWidget {
  const HomeContent({Key? key}) : super(key: key);
  @override
  _HomeContentState createState() => _HomeContentState();
}

class _HomeContentState extends State<HomeContent> {
  int count = 0;
  @override
  Widget build(BuildContext context) {
    return Center(
      child: Column(
      children: [
        Chip(
          label: Text("$count"),
        ),
        ElevatedButton(
            onPressed: () {
              setState(() {
                count++;
              });
            },
            child: Text("点击加一"))
      ],
    ),
    );
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android自定义ActionBar实例

    Android自定义ActionBar实例

    这篇文章主要介绍了Android自定义ActionBar的实现方法,以实例形式较为详细的分析了自定义ActionBar的原理与具体步骤,并附带完整实例代码供大家下载查看,需要的朋友可以参考下
    2014-11-11
  • Android ListView与getView调用卡顿问题解决办法

    Android ListView与getView调用卡顿问题解决办法

    这篇文章主要介绍了Android ListView与getView调用卡顿问题解决办法的相关资料,这里提供实例及解决办法帮助大家解决这种问题,需要的朋友可以参考下
    2017-08-08
  • android 仿微信demo——登录功能实现(服务端)

    android 仿微信demo——登录功能实现(服务端)

    这系列文章主要介绍了微信小程序-阅读小程序实例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能给你们提供帮助
    2021-06-06
  • Android WebView自定义长按选择实现收藏/分享选中文本功能

    Android WebView自定义长按选择实现收藏/分享选中文本功能

    这篇文章主要介绍了Android WebView自定义长按选择实现收藏/分享选中文本功能,需要的朋友可以参考下
    2017-06-06
  • Android Studio实现简单绘图板

    Android Studio实现简单绘图板

    这篇文章主要为大家详细介绍了Android Studio实现简单绘图板,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-05-05
  • android 将图片压缩到指定的大小的示例

    android 将图片压缩到指定的大小的示例

    本篇文章主要介绍了android 将图片压缩到指定的大小的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • Android实现左滑退出Activity的完美封装

    Android实现左滑退出Activity的完美封装

    这篇文章主要介绍了Android实现左滑退出Activity的完美封装,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Android实现快递物流时间轴效果

    Android实现快递物流时间轴效果

    这篇文章主要为大家详细介绍了Android实现快递物流时间轴效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-05-05
  • Android 测试入门篇

    Android 测试入门篇

    Android本身是一套软件堆叠(Software Stack),或者成为软件叠层架构,叠层主要分成三层:操作系统、中间件和应用程序
    2014-03-03
  • Android自定义View实现QQ运动积分转盘抽奖功能

    Android自定义View实现QQ运动积分转盘抽奖功能

    这篇文章主要为大家详细介绍了Android自定义View实现QQ运动积分转盘抽奖功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-10-10

最新评论