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

如何在flutter中清除PaginatedDataTable的DataTableSource?

在Flutter中清除PaginatedDataTable的DataTableSource可以通过以下步骤实现:

  1. 首先,确保你已经创建了一个自定义的DataTableSource类,并将其作为PaginatedDataTable的数据源。例如,你可以创建一个名为CustomDataTableSource的类。
  2. 在CustomDataTableSource类中,实现DataTableSource的必要方法,包括rowCount、isRowCountApproximate、getRows和sort方法。这些方法用于提供数据源的行数、行数据以及排序功能。
  3. 要清除PaginatedDataTable的数据源,你可以通过重新实例化CustomDataTableSource类来实现。可以在需要清除数据源的地方调用setState方法,并将CustomDataTableSource类重新赋值给PaginatedDataTable的source属性。

以下是一个示例代码,演示如何在Flutter中清除PaginatedDataTable的DataTableSource:

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

class CustomDataTableSource extends DataTableSource {
  // 实现DataTableSource的必要方法

  @override
  int get rowCount => 10;

  @override
  bool get isRowCountApproximate => false;

  @override
  int get selectedRowCount => 0;

  @override
  DataRow getRow(int index) {
    // 返回每一行的数据
    return DataRow.byIndex(
      index: index,
      cells: [
        DataCell(Text('Cell $index')),
        DataCell(Text('Cell $index')),
        DataCell(Text('Cell $index')),
      ],
    );
  }
}

class MyDataTable extends StatefulWidget {
  @override
  _MyDataTableState createState() => _MyDataTableState();
}

class _MyDataTableState extends State<MyDataTable> {
  CustomDataTableSource _data = CustomDataTableSource();

  void clearDataTableSource() {
    setState(() {
      _data = CustomDataTableSource();
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('PaginatedDataTable Example'),
      ),
      body: Column(
        children: [
          RaisedButton(
            child: Text('Clear DataTable Source'),
            onPressed: clearDataTableSource,
          ),
          Expanded(
            child: PaginatedDataTable(
              header: Text('DataTable'),
              source: _data,
              columns: [
                DataColumn(label: Text('Column 1')),
                DataColumn(label: Text('Column 2')),
                DataColumn(label: Text('Column 3')),
              ],
              rowsPerPage: 5,
            ),
          ),
        ],
      ),
    );
  }
}

void main() {
  runApp(MaterialApp(
    home: MyDataTable(),
  ));
}

在上面的示例中,我们创建了一个CustomDataTableSource类作为PaginatedDataTable的数据源。通过调用setState方法并重新实例化CustomDataTableSource类,我们可以在按钮点击时清除数据源。

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

相关·内容

  • Flutter 专题】132 图解 PaginatedDataTable 分页表格

    是由 DataTable 延伸而来,并被 Card 包裹;区别在于 PaginatedDataTable 支持分页展示; 和尚将分页表单分为五部分,分别是 DataTable 整体数据表格、...DataColumn 横向数据表头、DataRow 纵向数据列表、DataCell 数据表单元格以及 DataTableSource 数据来源; 而 PaginatedDataTable 分页数据表格也是通过...columns & source 作为基本 PaginatedDataTable 三个必要属性;其中 header 作为表格标题,不可为空,建议常用是 Text 也可以用 ButtonBar 按钮容器...onSort 回调来进行列表排序监听; source 是来自 DataTableSource数据源;主要实现四个抽象方法,分别是 getRow() 根据索引获取行内容、rowCount 数据源行数...rowsPerPage = value), 6. sortAscending & sortColumnIndex sortAscending 用于设置表格数据升序还是降序,需要配合 DataColumn

    2.3K30

    何在keras添加自己优化器(adam等)

    2、找到keras在tensorflow下根目录 需要特别注意是找到keras在tensorflow下根目录而不是找到keras根目录。...一般来说,完成tensorflow以及keras配置后即可在tensorflow目录下python目录中找到keras目录,以GPU为例keras在tensorflow下根目录为C:\ProgramData...找到optimizers.pyadam等优化器类并在后面添加自己优化器类 以本文来说,我在第718行添加如下代码 @tf_export('keras.optimizers.adamsss') class...# 传入优化器名称: 默认参数将被采用 model.compile(loss=’mean_squared_error’, optimizer=’sgd’) 以上这篇如何在keras添加自己优化器...(adam等)就是小编分享给大家全部内容了,希望能给大家一个参考。

    45K30

    Flutter Widgets大全】电子书开源

    Flutter Widgets大全】是老孟耗费大量精力整理,总共有330多个组件详细用法,开源到Github上,希望可以帮助到大家,开源不易,转发一下可不可以?。...Flutter Widgets 【Flutter Widgets 大全】 为 Flutter 老孟 网站项目,共收录 330 多个 Widgets,此电子书并不适合入门(一个一个组件学习),适合当作手册...,需要时候进行查阅。...为了方便对比学习,我将相近或相反功能组件整理到一个文件,比如所有的 Button 类组件、弹出类组件等。 如果想系统学习入门知识,请到 Flutter 老孟 实战 查看。...OutlineInputBorder 在线查看 OverflowBox 在线查看 Overlay 在线查看 Padding 在线查看 PageScrollPhysics 在线查看 PageView 在线查看 PaginatedDataTable

    1.2K10

    Flutter 实战】文件系统目录

    老孟导读:Flutter 获取文件路径,我们都知道使用 path_provider,但对其目录对含义不是很清楚,此文介绍 Android、iOS 系统文件目录,不同场景下建议使用目录。...不同平台对应文件系统是不同,比如文件路径,因此 Flutter 获取文件路径需要原生支持,原生端通过 MethodChannel 传递文件路径到 Flutter,如果没有特殊需求,推荐大家使用...getExternalStorageDirectories 可以存储应用程序特定数据目录路径。这些路径通常位于外部存储(单独分区或SD卡)上。...存储空间有限,此目录数据随时可能被系统清除,也可以通过 设置 清除数据 可以清除此目录数据。...此目录特点: 当应用卸载时候,这些数据也会被删除,避免垃圾文件。 不需要申请额外权限。 空间大且不会被系统清除,通过 设置 清除数据 可以清除此目录数据。

    2.8K10

    MOO音乐Flutter实战总结之内存治理(上)

    本系列文章将提炼 MOO APP 开发遇到情况,就 Flutter 内存占用治理方面,分享日常开发一些基本认知、注意要点、排查方法和优化方案。内存治理篇文章共分上、、下三篇,本篇为上篇。...图一 新生代(New Generation)  内存空间较小,划分为等分两部分,采用复制-清除法管理内存,效率高,执行频率比老生代高一些。经过一轮复制清除后,存活下来对象会被转移到老生代空间。...从标记到内存清除和整理, GC 是一个耗时执行过程,虽然引擎自身也做了一些优化,多线程并行执行、增量执行、闲时执行,以减少 GC 性能影响。...延时、持续执行闭包引用 Flutter 提供延时和持续执行对象有 Animation、Timer、Future 等,在结束执行之前,回调函数引用到相关对象都会被强引用保留在内存。 ?...Flutter Engine 自身问题 iOS 渲染 emoji 内存占用 +130 MB,且关闭页面无法被回收,目前只能从引擎内部去挖掘解决方案。

    1.7K32

    文本、图片和按钮在Flutter怎么用

    控制文本展示样式参数,字体名称 fontFamily、字体大小 fontSize、文本颜色 color、文本阴影 shadows 等等,这些参数被统一封装到了构造函数参数 style。...理解了单一样式文本Text使用方法后,我们再来看看如何在一段字符串中支持多种混合展示样式。...图片显示方式有很多,比如资源图片、网络图片、文件图片等,图片格式也各不相同,因此在Flutter,也有多种方式用来加载不同形式、支持不同格式图片: 加载本地资源图片,: Image.asset...这,和AndroidImageView、iOSUIImageView属性都是类似的,我在Flutter图片组件这篇文章中有做详细介绍。...最大缓存限制为100MB,当限定空间已经存满数据时,把最久没有被访问到图片清除。图片缓存只会在运行期间生效,也就是只缓存在内存

    7.7K20

    Flutter 密码锁定屏幕

    在任何情况下,最新Andriod先决条件所指出那样,您需要在生物识别认证被破坏或受损偶然机会上提供选择性认证策略。 在在本文中,我们将探讨「Flutter「密码锁定屏幕」。...它将显示在flutter应用程序中使用密码屏幕时如何解锁屏幕。 该演示视频演示了如何在Flutter创建密码锁定屏幕。...它显示了如何在flutter应用程序中使用「passcode_screen」软件包来运行密码锁定屏幕。它显示密码输入屏幕以解锁屏幕。它会显示在您设备上。...当我们运行应用程序时,我们应该获得屏幕输出,屏幕下方截图所示。...当我们运行应用程序时,我们应该获得屏幕输出,屏幕下方截图所示。 img 不要忘记关闭流。用户可以处理它。

    5K30

    FlutterWeb性能优化探索与实践

    同时加强了 FlutterWeb 特殊场景下资源优化,:字体图标精简、Runtime Manifest 隔离、Mobile/PC 分平台打包等; 加载优化:在编译阶段进行静态资源优化后,我们在前端运行时...4.2.1 Lazy Loading Flutter 官方提供 deferred as 关键字来实现 Widget 懒加载,而 dart2js 在编译过程可以将懒加载 Widget 进行按需打包,...flutter_tools 中将标记 Runtime Manifest 代码块抽离并写入 HTML 文件(以 JS 常量形式存在)。...在 PC 适配过程,我们不可避免地需要书写双端兼容代码,:为了实现在列表页面对卡片组件复用。...通过探究,我们发现是 Flutter Framework 中一些系统 UI 组件(:CalendarDatePicker、PaginatedDataTable、PopupMenuButton 等)使用到了

    1.7K20

    Flutter】自定义滚动开关

    工作就像房子电源开关。 本文中,我们将探讨Flutter **Custom Rolling Switch in Flutter。...假设此属性价值回报为true,则此开关为ON,为OFF则为false。当此属性无效时,开关小部件会失效。 该演示视频展示了如何在颤动创建自定义滚动开关。...它显示了自定义滚动开关如何在flutter应用程序中使用lite_rolling_switch包工作。...在此小部件,我们将添加mainAxisAlignment为center。在内部,我们将添加带有样式文本。...我们将添加animationDuration手段来延迟动画开始并添加onChanged表示用户打开或关闭开关时间。当我们运行应用程序时,我们应该获得屏幕输出,屏幕下方截图所示。

    33.4K60

    Flutter 实现刮刮卡效果

    在这个博客,我们将探讨 Flutter 刮刮卡 效果。我们将了解如何在flutter应用程序中使用scratcher包实现刮板卡。...目录 刮刮卡 属性 引入 如何在dart文件实现代码 代码文件 结论 刮刮卡 刮刮卡是您在不同购物应用程序和支付应用程序上可以看到著名事物之一。这些刮刮卡用于为用户提供奖品和现金返还。...它可以具有广泛使用案例;但是,它基本上用于为应用程序用户创建随机奖品。 该演示视频演示了如何在Flutter创建刮刮卡。它显示了刮卡将如何工作使用scratcher在Flutter应用程序包。...= true android.useAndroidX = true android.enableJetifier = true 如何在dart文件实现代码 在lib文件夹内创建一个名为scratch_card.dart...运行应用程序时,我们应该获得屏幕输出,屏幕下方捕获。

    5.2K20
    领券