我有一个自定义类(类有一个构造函数和setters/getters)
class Test() {
String field1;
String field2;
String field3;
}
这是我的Firestore快照x1c 0d1x
字段“0”和“1”是我的迭代器,这取决于创建了多少个元素。
for (int i = 0; i < documentSnapshot.getData().size(); i++)
我需要获取所有元素,为每个元素创建一个新对象Test (o1{field1..3} .. oN{field1..3})
,并将所有对象存储在ArrayList<Test>
中,但我不知道如何操作。
2条答案
按热度按时间yrefmtwq1#
如果您需要从ABCD文档中获取每个字段(0、1等)并创建一个
List<Test>
,首先,请按如下方式定义您的Test类:然后,请使用下面的代码行:
根据您的屏幕截图,logcat中的结果将是:
另一方面,如果你想把一个自定义对象数组Map到一个自定义对象列表中,那么请看下面的帖子:
6ojccjat2#
要从Android中的Firestore读取嵌套自定义对象的Map,您可以按照以下步骤操作:
定义POJO(Plain Old Java Object)类来表示自定义对象。创建对Firestore集合或包含嵌套自定义对象Map的文档的引用。调用get()方法以将数据作为任务检索。在任务的OnSuccessListener中,从DocumentSnapshot中提取数据作为Map。迭代Map并从数据中创建POJO类的示例。以下是示例代码片段:
数据库= FirebaseFirestore.getInstance();文档引用docRef =数据库.集合(“集合名称”).文档(“文档名称”);docRef.get().addOnSuccessListener(新的OnSuccessListener