搜索插件、代码仓与 APP 分类

load 封面
插件详情v1.0.0

load

全局加载控件,纯Flutter库,不使用原生代码。其用法类似于OKToast。

AndroidiOSWebmacOSWindowsLinux
近 30 天下载
1940
喜欢数
22
Pub 分数
130

安装插件

flutter pub add load

插件介绍

基于插件公开信息、社区数据与项目使用情况整理的选型参考。

一个轻量级的纯 Flutter 加载控件包,提供全局加载指示器,无需依赖原生代码。使用方式受 OKToast 启发,为跨应用显示加载状态提供了简单且一致的方法。兼容所有主要平台,包括 Android、iOS、Web、macOS、Windows 和 Linux。非常适合希望在异步操作期间管理 UI 级加载指示器的开发者。

适合场景

  • 在 API 调用期间显示加载覆盖层
  • 显示数据获取过程中的进度
  • 增强长时间运行任务期间的用户反馈
  • 在各个平台上提供一致的加载体验
  • 用全局解决方案替换手动加载小部件

主要特点

  • 全局加载控制
  • 纯 Dart 实现
  • 跨平台支持
  • 类似于 OKToast 的简单 API
  • 无原生代码依赖

适合对象

  • 开发跨平台 Flutter 应用的开发者
  • 需要一致加载用户体验的团队
  • 项目避免原生平台集成
  • 需要最少设置即可加载指示器的应用程序
  • 以UI为中心的应用程序,包含频繁的异步操作

使用建议

  • 如果处理不当,可能需要手动关闭
  • 与高级吐司库相比,自定义选项有限
  • 不适合复杂的加载动画或嵌套的加载状态

原始 README

以下为关联源码仓库的 README 原文快照,最新内容请访问源码仓库。

load

pub package GitHub

Global loading widget, which can be used through simple configuration.

Pure flutter library, not use native code.

It is similar to OKToast in use.

ScreenShot

Screenshot_2019-05-21-14-08-42-731_com.example.ex.png

Usage

  • install

Add to yaml

version is pub package

dependencies:
  load: $latest_version
  • import
import 'package:load/load.dart';
  • wrap your application
void main() {
  runApp(
    LoadingProvider(
      child: MyApp(),
    ),
  );
}

or

LoadingProvider(
  child: MaterialApp(),
);

Debug custom loading widget in Flutter inspector

You can try to use next method to include the widget:

MaterialApp(
  builder: (context, widget) {
    return LoadingProvider(
      child: widget,
    );
  },
);

see example/lib/main.dart

  • show or hide dialog
showLoadingDialog();
showCustomLoadingWidget(Container()); // custom dialog
hideLoadingDialog();

Advanced Usage

Custom Loading Widget

Using LoadingThemeData and loadingWidgetBuilder

LoadingProvider(
  themeData: LoadingThemeData(),
  loadingWidgetBuilder: (ctx, data) {
    return Center(
      child: SizedBox(
        width: 30,
        height: 30,
        child: Container(
          child: CupertinoActivityIndicator(),
          color: Colors.blue,
        ),
      ),
    );
  },
  child: MyApp(),
);

image

Custom some config

All params is optional

Params Type Default Value Desc
backgroundColor Color Colors.black54 Background transparent mask
tapDismiss bool true Will it close when touching the background?
loadingBackgroundColor Color Colors.white Background color for the center Loading Widget
loadingPadding EdgeInsets EdgeInsets.all(8.0) Padding for the center Loading Widget
loadingSize Size Size(55,55) Size for the center Loading Widget
animDuration Duration Duration(milliseconds: 300) Show/Hide Time Duration

所属分类

源码仓库

使用此插件的项目

暂无相关数据。