Java 错误:找不到适用于setQuery的方法(com.google.firebase.firestore.Query,Class<;Note>;)

Java 错误:找不到适用于setQuery的方法(com.google.firebase.firestore.Query,Class<;Note>;),java,android,firebase,Java,Android,Firebase,我正在尝试从FirebaseFirestore获取数据,并在cardview中实现它 这是我的代码 public class MainActivity extends AppCompatActivity { private FirebaseFirestore db = FirebaseFirestore.getInstance(); private CollectionReference notebookRef = db.collection("Notebook");

我正在尝试从FirebaseFirestore获取数据,并在cardview中实现它

这是我的代码

public class MainActivity extends AppCompatActivity { 

    private FirebaseFirestore db = FirebaseFirestore.getInstance();
    private CollectionReference notebookRef = db.collection("Notebook");

    //notebookref is my collection name in firebase. 
    private NoteAdapter adapter;

    TextView tv_id;
    TextView tv_attend;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        tv_id=findViewById(R.id.tv_id);
        tv_attend=findViewById(R.id.tv_attend);

        setUpRecyclerView();
    }

    private void setUpRecyclerView() {
        Query query = notebookRef.orderBy("attend", Query.Direction.DESCENDING);

        FirebaseRecyclerOptions<Note> options = new FirebaseRecyclerOptions.Builder<Note>()
                .setQuery(query, Note.class)
                .build();

        adapter = new NoteAdapter(options);

        RecyclerView recyclerView = findViewById(R.id.rv_one);
        recyclerView.setHasFixedSize(true);
        recyclerView.setLayoutManager(new LinearLayoutManager(this));
        recyclerView.setAdapter(adapter);

    }

    @Override
    protected void onStart() {
        super.onStart();
        adapter.startListening();
    }

    @Override
    protected void onStop() {
        super.onStop();
        adapter.stopListening();
    }
}
公共类MainActivity扩展了AppCompatActivity{
私有FirebaseFirestore db=FirebaseFirestore.getInstance();
私人收藏参考notebookRef=db.collection(“笔记本”);
//notebookref是我在firebase中的收藏名称。
专用记事本适配器;
TextView tv_id;
TextView电视节目;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv_id=findviewbyd(R.id.tv_id);
tv_出席=findviewbyd(R.id.tv_出席);
setUpRecyclerView();
}
私有void setUpRecyclerView(){
Query Query=notebookRef.orderBy(“出席”,Query.Direction.DESCENDING);
FirebaseRecyclerOptions选项=新建FirebaseRecyclerOptions.Builder()
.setQuery(查询,Note.class)
.build();
适配器=新的NoteAdapter(选项);
RecyclerView RecyclerView=findViewById(R.id.rv_one);
recyclerView.setHasFixedSize(true);
recyclerView.setLayoutManager(新的LinearLayoutManager(本));
recyclerView.setAdapter(适配器);
}
@凌驾
受保护的void onStart(){
super.onStart();
adapter.startListening();
}
@凌驾
受保护的void onStop(){
super.onStop();
adapter.stopListening();
}
}
我得到以下错误:

error: no suitable method found for setQuery(com.google.firebase.firestore.Query,Class<Note>)
错误:找不到适用于setQuery的方法(com.google.firebase.firestore.Query,类)
似乎我有以下问题:FirebaseRecyclerOptions.Builder().setQuery(query,Note.class.build()


有关于如何处理此问题的任何提示吗?

请检查您导入的
查询。你应该进口

import com.google.firebase.firestore.Query;
更多细节

orderBy(String field, Query.Direction direction)
创建并返回按指定字段额外排序的新查询,可以选择按降序而不是升序排序

参考文献

相应地确认您的依赖关系

dependencies {
    // FirebaseUI for Firebase Realtime Database
    implementation 'com.firebaseui:firebase-ui-database:6.2.0'

    // FirebaseUI for Cloud Firestore
    implementation 'com.firebaseui:firebase-ui-firestore:6.2.0'

    // FirebaseUI for Firebase Auth
    implementation 'com.firebaseui:firebase-ui-auth:6.2.0'

    // FirebaseUI for Cloud Storage
    implementation 'com.firebaseui:firebase-ui-storage:6.2.0'
}
参考

我不得不改变: FirebaseRecyclerOptions选项=新建FirebaseRecyclerOptions.Builder() 致:
FirestoreRecyclerOptions=new FirestoreRecyclerOptions.Builder()

hi@jai您可以添加有关如何获得此错误的步骤吗?这将帮助人们更好地理解问题,并以更有效的方式帮助您。你可以在这里阅读更多关于如何形成一个好问题的内容。这一行有没有错误?不,我在那一行没有任何错误。setQuery(query,Note.class)这是我唯一有错误的一行,是否需要此依赖项?实现'com.android.support:design:28.0.0',导入时,行-Query Query=notebookRef.orderBy(“出席”,Query.Direction.DESCENDING);显示错误-错误:找不到符号变量方向Orderby(字符串字段,Query.Direction),,,这正是我尝试的,它显示的是相同的错误-错误:找不到符号变量方向重新检查导入,我编辑了它。另外,如果你的应用程序没有显示查询错误,那么它应该不会显示任何查询错误。方向作为枚举。一旦我更改导入,查询工作正常,但它会再次返回到我的第一个错误。setQuery(Query,Note.class)显示相同的错误是的,我有所有这些依赖项,它仍然显示此错误-错误:在此行找不到符号变量方向-Query Query=notebookRef.orderBy(“出席”,Query.Direction.DESCENDING);