ошибка: не найден подходящий метод для setQuery (com.google.firebase.firestore.Query, класс <Note>) - PullRequest
0 голосов
/ 30 января 2020

Я пытаюсь получить данные из FirebaseFirestore и реализовать их в виде карты.

Это мой код

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();
    }
}

Я получаю следующую ошибку:

error: no suitable method found for setQuery(com.google.firebase.firestore.Query,Class<Note>)

Похоже, у меня проблема с: FirebaseRecyclerOptions.Builder (). SetQuery (query, Note.class) .build ();

Любые указатели о том, как бороться с этой проблемой

Ответы [ 2 ]

0 голосов
/ 31 января 2020

Мне пришлось изменить: FirebaseRecyclerOptions options = new FirebaseRecyclerOptions.Builder () на: FirestoreRecyclerOptions options = new FirestoreRecyclerOptions.Builder ()

0 голосов
/ 30 января 2020

Проверьте ваш импорт для Query. Вы должны импортировать

import com.google.firebase.firestore.Query;

Подробнее

orderBy(String field, Query.Direction direction)

Создает и возвращает новый запрос, который дополнительно сортируется по указанному полю, опционально в порядке убывания, а не в порядке возрастания.

Ref. https://firebase.google.com/docs/reference/android/com/google/firebase/firestore/Query

Подтвердите свои зависимости соответственно

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'
}

Ref. https://github.com/firebase/FirebaseUI-Android

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...