Java RecyclerView未显示firestore中的任何数据
我在firestore数据库中有主题类别列表,我希望它显示在我的应用程序中(我认为可以通过recyclerView完成)。但我的recyclerView没有填充任何数据。你可以在下面看到我的代码: Question_list.javaJava RecyclerView未显示firestore中的任何数据,java,android,android-recyclerview,Java,Android,Android Recyclerview,我在firestore数据库中有主题类别列表,我希望它显示在我的应用程序中(我认为可以通过recyclerView完成)。但我的recyclerView没有填充任何数据。你可以在下面看到我的代码: Question_list.java import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.LinearLayoutManager; imp
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.Log;
import com.google.firebase.firestore.DocumentChange;
import com.google.firebase.firestore.EventListener;
import com.google.firebase.firestore.FirebaseFirestore;
import com.google.firebase.firestore.FirebaseFirestoreException;
import com.google.firebase.firestore.QuerySnapshot;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.Nullable;
public class Question_list extends AppCompatActivity {
private static final String TAG ="Firelog" ;
private RecyclerView mMainList;
private FirebaseFirestore mFirestore;
private CategoryAdapter categoryAdapter;
private List<Categories> list_category;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_question_list);
mMainList = (RecyclerView)findViewById(R.id.main_list_id);
//mMainList.setHasFixedSize(true);
mMainList.setLayoutManager(new LinearLayoutManager(this));
mMainList.setAdapter(categoryAdapter);
mFirestore = FirebaseFirestore.getInstance();
categoryAdapter = new CategoryAdapter(list_category);
list_category = new ArrayList<>();
mFirestore.collection("Questions").addSnapshotListener(new EventListener<QuerySnapshot>() {
@Override
public void onEvent(@Nullable QuerySnapshot queryDocumentSnapshots, @Nullable FirebaseFirestoreException e) {
if(e!=null){
Log.d(TAG, "Error: "+ e.getMessage());
}
for(DocumentChange doc: queryDocumentSnapshots.getDocumentChanges()){
if(doc.getType() == DocumentChange.Type.MODIFIED){
//String document = doc.getDocument().getString("Category");
Categories categories = doc.getDocument().toObject(Categories.class);
list_category.add(categories);
Log.d(TAG, "Category: "+ categories);
categoryAdapter.notifyDataSetChanged();
}
}
}
});
}
}
以上是我所有的java类。我还没有上传我的XML文件,因为我认为问题出在java类中。categoryAdapter=newcategoryadapter(list\u category);
categoryAdapter = new CategoryAdapter(list_category);
list_category = new ArrayList<>();
list_category=new ArrayList();
列表类别应在将其传递给适配器之前初始化
list_category = new ArrayList<>();
categoryAdapter = new CategoryAdapter(list_category);
list_category=new ArrayList();
categoryAdapter=新的categoryAdapter(列表\类别);
categoryAdapter = new CategoryAdapter(list_category);
list_category = new ArrayList<>();
list_category = new ArrayList<>();
categoryAdapter = new CategoryAdapter(list_category);