简体   繁体   English

在 Flutter 中未使用 ListView 找到方向性小部件

[英]No Directionality Widget Found with ListView in Flutter

I tried to show a ListView of the data i gort in my Cloud Firestore Database named Exercises:我试图显示我在名为“练习”的 Cloud Firestore 数据库中获取的数据的 ListView:

import 'package:flutter/material.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_core/firebase_core.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  final db = FirebaseFirestore.instance;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: StreamBuilder<QuerySnapshot>(
        stream: db.collection('Exercises').snapshots(),
        builder: (context, snapshot) {
          if (!snapshot.hasData) {
            return Center(
              child: CircularProgressIndicator(),
            );
          } else
            return ListView(
              children: (snapshot.data! as QuerySnapshot).docs.map((doc) {
                return Card(
                  child: ListTile(
                    title: Text(doc.data()['name']),
                  ),
                );
              }).toList(),
            );
        },
      ),
    );
  }
}

But when i do this i get the Error in my App: Image of the Error但是当我这样做时,我的应用程序中出现错误:错误图像

Thank you for your help谢谢您的帮助

Can't Use StreamBuilder directly into the scaffold, Add Column or SinglechildScrollview or Container.不能直接使用 StreamBuilder 到脚手架,添加 Column 或者 SinglechildScrollview 或者 Container。

import 'package:flutter/material.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:firebase_core/firebase_core.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  final db = FirebaseFirestore.instance;
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(  // Column, Singlechild Scroll view Here
        children: [
          StreamBuilder<QuerySnapshot>(
            stream: db.collection('Exercises').snapshots(),
            builder: (context, snapshot) {
              if (!snapshot.hasData) {
                return Center(
                  child: CircularProgressIndicator(),
                );
              } else
                return ListView(
                  children: (snapshot.data! as QuerySnapshot).docs.map((doc) {
                    return Card(
                      child: ListTile(
                        title: Text(doc.data()['name']),
                      ),
                    );
                  }).toList(),
                );
            },
          ),
        ],
      ),
    );
  }
}

First thank you for your answer.首先感谢您的回答。 I tried it with the Column and with the SinglechildScrollview, but then i get another Error, that a MediaQuery Widget is missing我用 Column 和 SinglechildScrollview 尝试过,但后来我得到另一个错误,即缺少 MediaQuery 小部件

MediaQuery Error媒体查询错误

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Flutter - 将 SQL 数据发送到 ListView - Flutter - Sending SQL data to a ListView 如何从flutter中的firebase数据填充列表视图 - How to populate listview from firebase data in flutter Flutter Listview 未更新 UI 上的列表项 - Flutter Listview not updating list items on UI 将数据构建回 ListView Builder [Flutter] - Build Data Back to ListView Builder [Flutter] 无法使用SQLite导入的数据库将android.widget.ListView强制转换为android.widget.TextView - android.widget.ListView cannot be cast to android.widget.TextView, using SQLite imported Database 了解SQL中的关联和方向性的准确来源是什么? - What is an accurate source to learn about associations and directionality in SQL? 已关闭的 Dismissible 小部件仍然是树的一部分。 在 flutter - A dismissed Dismissible widget is still part of the tree. In flutter 在不使用Firebase的情况下构建实时的实时列表视图 - Build a flutter real time listview without using Firebase 如何在带有颤动索引的默认 Listview Builder 中选择单个复选框 - How to select single checkbox in default Listview Builder with index in flutter 为什么我在 flutter 的文本小部件中看不到 firebase 数据库中的 snapshot.value 的值? - Why i cant see the values of my snapshot.value from firebase database in a Text widget in flutter?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM