database - 在 Flutter 中从数据库填充 GridView

标签 database flutter dart

我想从数据库中的表中检索数据并将其显示到 Flutter 中的 GridView 中。 目前我将它显示在一个简单的列表中,但我无法在 GridView 中显示它。 这是我的代码

return Scaffold(
  appBar: AppBar(
    title: Text("Diario di bordo"),
  ),
  /*body: Center(
    child: Text('Nessun diario presente'),
  ),*/
    body: FutureBuilder<List>(
      future: dbHelper.queryAllRows(),
      initialData: List(),
      builder: (context, snapshot) {
        return snapshot.hasData
            ? ListView.builder(
          itemCount: snapshot.data.length,
          itemBuilder: (_, int position) {
            final item = snapshot.data[position];
            //get your item data here ...
            return Card(
              color: RandomColor().randomColor(),
              child: ListTile(
                title: Text(
                    snapshot.data[position].row[1]),
              ),
            );
          },
        )
            : Center(
          child: CircularProgressIndicator(),
        );
      },
    ),
...

我搜索了文档,我看到了这段代码

GridView.count(
// Create a grid with 2 columns. If you change the scrollDirection to
// horizontal, this produces 2 rows.
crossAxisCount: 2,
// Generate 100 widgets that display their index in the List.
children: List.generate(100, (index) {
return Center(
  child: Text(
    'Item $index',
    style: Theme.of(context).textTheme.headline,
  ),
);
}),
);

我不明白如何从 db 中的 mytable 中检索数据并将其显示在 GridView 中。

最佳答案

您可以使用GridView.Builder

return snapshot.hasData? 
       GridView.builder(
          gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
              crossAxisCount: 2),
          itemCount: snapshot.data.length,
          itemBuilder: (BuildContext context, int index) {
            final item = snapshot.data[index];
            //get your item data here ...
            return Card(
              color: RandomColor().randomColor(),
              child: ListTile(
                 title: Text(
                    snapshot.data[index].row[1]),
              ),
            );
          },
        )
      : Center(
          child: CircularProgressIndicator(),
        );

关于database - 在 Flutter 中从数据库填充 GridView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57597755/

相关文章:

javascript - 在没有服务器端的情况下构建报价数据库

C# 从数据表中插入数据到 SQL Server 数据库

flutter - WebView无法在flutter中加载两个不同的url?

双向 flutter 饲料生长

flutter - 水平使行垂直

java - 如何使用 java 应用程序在 SQL 数据库中执行搜索?

database - 处理在 mongodb 中完全相同的多个查询

dart - 在 Flutter 中检测垂直滑动方向

string - 如何在 Flutter 中将 Unicode 字符串转换为正确的字符串(中文)

Flutter: fatal error :回调查找失败! (带有音频播放器包)