首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Flutter - CircularProgressIndicator不会停止执行

Flutter是一种跨平台的移动应用开发框架,由Google开发和维护。它使用Dart编程语言,可以同时在iOS和Android平台上构建高性能、美观的应用程序。

CircularProgressIndicator是Flutter中的一个小部件,用于显示一个圆形的进度指示器。它通常用于表示正在进行中的任务或操作的进度。默认情况下,CircularProgressIndicator会无限循环地旋转,直到任务完成或手动停止。

要停止CircularProgressIndicator的执行,可以使用一个布尔变量来控制其显示与隐藏。例如,可以创建一个名为isLoading的布尔变量,并将其初始值设置为true。然后,在任务完成时,将isLoading的值设置为false,CircularProgressIndicator将停止旋转。

以下是一个示例代码:

代码语言:txt
复制
import 'package:flutter/material.dart';

class MyWidget extends StatefulWidget {
  @override
  _MyWidgetState createState() => _MyWidgetState();
}

class _MyWidgetState extends State<MyWidget> {
  bool isLoading = true;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            if (isLoading)
              CircularProgressIndicator(),
            RaisedButton(
              child: Text('完成任务'),
              onPressed: () {
                setState(() {
                  isLoading = false;
                });
              },
            ),
          ],
        ),
      ),
    );
  }
}

在上面的示例中,当isLoadingtrue时,CircularProgressIndicator会显示出来。当点击"完成任务"按钮时,isLoading的值被设置为false,CircularProgressIndicator停止旋转。

Flutter提供了丰富的小部件和功能,可以用于开发各种类型的应用程序,包括但不限于移动应用、桌面应用、Web应用和嵌入式应用。它具有良好的性能和灵活性,并且拥有庞大的开发者社区和生态系统。

腾讯云提供了一系列与Flutter相关的产品和服务,包括云服务器、云存储、云数据库等。您可以通过访问腾讯云官方网站(https://cloud.tencent.com/)了解更多关于这些产品的详细信息和使用指南。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 进度组件ProgressIndicator

    上期回顾 ---- 在前面的文章中我们介绍了很多Flutter中的Widget,但是确实还有很多Widget没有介绍到,当然我们会在以后用的时候来做说明的,今天我们就来介绍下Flutter中的进度组件。...ProgressIndicator ---- 在Flutter中ProgressIndicator是个抽象类,它有两个子类。...LinearProgressIndicator和CircularProgressIndicator,分别代表线性进度条和原型进度条,当然两个进度条的应用场景也会有不同,LinearProgressIndicator...主要用于明确刻度的进度表示,CircularProgressIndicator主要用于未知刻度的进度表示。...接下来还是来看下CircularProgressIndicatorCircularProgressIndicator ---- CircularProgressIndicator的构造方法和LinearProgressIndicator

    1.6K30

    flutter系列之:做一个下载按钮的动画

    简介我们在app的开发过程中经常会用到一些表示进度类的动画效果,比如一个下载按钮,我们希望按钮能够动态显示下载的进度,这样可以给用户一些直观的印象,那么在flutter中一个下载按钮的动画应该如何制作呢...因为涉及到复杂的状态变化,所以简单的AnimatedWidget已经满足不了我们的需求了,这里就需要用到flutter中的AnimatedBuilder组件了。...在未开始下载之前,我们希望downloadButton是一个长条形的按钮,按钮上的文字显示GET,下载过程中希望是一个类似CircularProgressIndicator的动画,可以根据下载进度来动态变化...因为在下载过程中,还有停止的功能,所以我们在CircularProgressIndicator上再放一个stop icon,最后将这个stack封装在AnimatedOpacity中,实现整体的一个淡入淡出功能..., ), ),总结这样,我们一个动画的下载按钮就制作完成了,效果如下:本文的例子:https://github.com/ddean2009/learn-flutter.git

    43431

    初学者的 Flutter bloc

    这个挂件不会重新构建视图,它只会监听。 BlocBuilder 通过这个挂件,我们能够根据它们的状态重新构建我们的挂件。...本文我们不会介绍存储库和服务部分,但是如果你感兴趣,可以参考文本的代码。 下面是我完成的应用效果。 该首页有不同的部分,我们看下。...这个挂件有四种可能的状态: 成功:真实分类列表 错误:展示错误信息 加载:展示一个 CircularProgressIndicator 挂件 选中:更改选中类别的大小和颜色 Game by category...它有三个可能的状态: 成功:通过分类展示游戏列表 错误:展示错误信息 加载:展示一个 CircularProgressIndicator 挂件 All games widget 不通过过滤获取游戏列表。...这个挂件只有在它的 bloc 发射成功一个状态后才展示出来,它有三个状态: 成功:展示游戏列表 错误:展示一个错误信息 加载:展示一个 CircularProgressIndicator 挂件 项目结构

    14310

    Flutter】744- Flutter 最佳实践

    来源:Kinjal Dhamat https://medium.com/flutter-community/flutter-best-practices-and-tips-7c2782c9ebb5 最佳实践是一个领域可以接受的专业标准...让我们探索一些设计和开发Flutter应用程序的最佳实践。 1....使用级联运算符 如果我们不想对同一对象执行一系列操作,则应使用级联运算符 // Don't var path = Path(); path.lineTo(0, size.height); path.lineTo...对于仅包含一个表达式的函数,可以使用表达式函数 //Don't get width { return right - left; } Widget getProgressBar() { return CircularProgressIndicator...在 Widget 中使用 const 当 setState 调用时不会改变的 Widget ,我们应该将其定义为常量,这将阻止 Widget 重建,从而提高性能 Container( padding

    1.3K21

    Flutter】Icons 组件 ( 加载 Flutter 内置的图标 | 材料设计图标完整展示 )

    文章目录 一、加载 Flutter 内置的图标 三、完整代码示例 三、相关资源 四、Icons 图标参考 ( 超长截图 | 材料设计图标完整展示 ) 一、加载 Flutter 内置的图标 ---- Flutter...Stack( children: [ // 进度条 Center(child: CircularProgressIndicator...CachedNetworkImage( // 加载网络图片过程中显示的内容 , 这里显示进度条 placeholder: (context, url)=>CircularProgressIndicator...官网 : https://flutter.dev/ Flutter 插件下载地址 : https://pub.dev/packages Flutter 开发文档 : https://flutter.cn.../docs ( 强烈推荐 ) 官方 GitHub 地址 : https://github.com/flutter Flutter 中文社区 : https://flutter.cn/ Flutter 实用教程

    2.8K20

    xxljo点击停止任务,任务还在执行,这种咋解决

    目录 1 问题 2 实现 1 问题 在使用xxljob 的时候,我自己写了一个方法 @xxljob(“www”) ,里面的逻辑要执行10分钟,就是循环下载大文件,所以执行的时间长,但是在点击执行一次之后...,我到日志里面,点击停止任务,日志里面写的停止了,但是我看见我项目里面,后台还在下载文件,根本没有停止,这种情况咋解决,也就是任务逻辑执行时间长,点击停止,任务其实没有停止,还在执行; 有知道咋解决嘛,...我就想即使我任务逻辑执行10分钟时间,我点击停止之后,你任务就立马停止,不应该背后偷偷下载 2 实现 问题可能是因为你的任务逻辑并没有实现可中断的机制, 导致在点击停止之后,任务并没有立即停止。...除此之外,你还可以通过增加任务的超时时间来防止任务执行时间过长, 超过一定时间后自动停止任务。可以在xxl-job-admin中修改超时时间, 使任务在规定的时间内完成执行,超时后就会被停止。...最后,建议你在任务逻辑执行较长时间时, 仔细评估任务的执行时间和资源消耗, 以避免任务过度耗费资源,影响其他任务和系统的正常运行。

    2.6K10
    领券