簡體   English   中英

Flutter - 如何使用 ListTile 顯示從 Firebase Firestore 中提取的 ArrayList 項?

[英]Flutter - How to show ArrayList items pulled from Firebase Firestore with ListTile?

我在 Firebase Firestore 上構建如下:

在這里輸入代碼

在這里的結構中,有2個ArrayList。 我想將 2 個 ArrayLists 的操作顯示為ListTile


我試過這樣的代碼:

Expanded(
  child: StreamBuilder <QuerySnapshot>(
    stream: FirebaseFirestore.instance.collection("users").doc(FirebaseAuth.instance.currentUser.uid).collection("yapilacaklar").snapshots(),
    builder: (context, snapshot) {
      if (!snapshot.hasData) return LinearProgressIndicator();
      return Expanded(
        child: _buildList(snapshot.data),
      );
    },
  )
),

Widget _buildList(QuerySnapshot snapshot) {
  return ListView.builder(
    itemCount: snapshot.docs.length,
    itemBuilder: (context, index) {
      final doc = snapshot.docs[index];
      return ListTile(
        title: Text(doc["yapilacaklar"].toString()),
      );
    },
  );
}

我試過的這些代碼沒有給出錯誤,但它們沒有顯示在任何 Widget 中。 我怎樣才能做我想做的事? 先謝謝您的幫助。

我認為問題在於“.collection("yapilacaklar")”。 它將嘗試查找 ID 為“yapilacaklar”的集合,而您的用戶文檔沒有任何 collections。在這種情況下,Yapilacaklar 是文檔中的一個字段。 嘗試獲取實際文檔的快照,然后從 yapilacaklar 字段中的數組創建一個 ListView。

flutterfire 文檔對於讀取 firestore 數據非常有幫助: https://firebase.flutter.dev/docs/firestore/usage/#read-data

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM