Περισσότερα
recyclerview Δεν υπάρχει προσαρτημένος προσαρμογέας; παράλειψη διάταξης
Μόλις υλοποιήθηκε η Recyclerview στον κώδικά μου, αντικαθιστώντας την Listview.
όλα λειτουργούν μια χαρά. Τα αντικείμενα εμφανίζονται.
αλλά το logcat λέει
15:25:53.476 E/RecyclerView﹕ No adapter attached; skipping layout
15:25:53.655 E/RecyclerView﹕ No adapter attached; skipping layout
για τον κώδικα
ArtistArrayAdapter adapter = new ArtistArrayAdapter(this, artists);
recyclerView = (RecyclerView) findViewById(R.id.cardList);
recyclerView.setHasFixedSize(true);
recyclerView.setAdapter(adapter);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
Όπως μπορείτε να δείτε έχω επισυνάψει έναν προσαρμογέα για το Recycleview. Γιατί λοιπόν συνεχίζω να λαμβάνω αυτό το σφάλμα;
έχω διαβάσει άλλες ερωτήσεις που σχετίζονται με το ίδιο πρόβλημα, αλλά καμία δεν βοηθάει.
213
3
Μπορείτε να βεβαιωθείτε ότι καλείτε αυτές τις δηλώσεις από το νήμα "main" (για παράδειγμα μέσα στη μέθοδο
onCreate()
). Μόλις καλέσω τις ίδιες δηλώσεις από μια "καθυστερημένη" μέθοδο. Στην περίπτωσή μου μιαResultCallback
, λαμβάνω το ίδιο μήνυμα.Στο δικό μου
Fragment
, η κλήση του παρακάτω κώδικα μέσα από μια μέθοδοResultCallback
παράγει το ίδιο μήνυμα. Μετά τη μετακίνηση του κώδικα στη μέθοδοonConnected()
μέσα στην εφαρμογή μου, το μήνυμα εξαφανίστηκε...Έπαιρνα τα ίδια δύο μηνύματα σφάλματος μέχρι που διόρθωσα δύο πράγματα στον κώδικά μου:
(1) Από προεπιλογή, όταν υλοποιείτε μεθόδους στο
RecyclerView.Adapter
παράγει:Βεβαιωθείτε ότι έχετε ενημερώσει τον κώδικά σας ώστε να λέει:
Προφανώς, αν έχετε μηδέν αντικείμενα στα αντικείμενα σας, τότε θα εμφανιστούν μηδέν πράγματα στην οθόνη.
(2) Δεν το έκανα αυτό όπως φαίνεται στην κορυφαία απάντηση: https://stackoverflow.com/questions/24503760/cardview-layout-width-match-parent-does-not-match-parent-recyclerview-width
(3) ΕΠΕΞΕΡΓΑΣΊΑ: ΜΠΌΝΟΥΣ: Επίσης, βεβαιωθείτε ότι έχετε ρυθμίσει το
RecyclerView
σας ως εξής:ΟΧΙ έτσι:
Έχω δει κάποια σεμινάρια που χρησιμοποιούν την τελευταία μέθοδο. Ενώ λειτουργεί νομίζω ότι παράγει και αυτό το σφάλμα.
Συμβαίνει όταν δεν ρυθμίζετε τον προσαρμογέα κατά τη φάση δημιουργίας:
Απλά μεταφέρετε τον ορισμό του προσαρμογέα στο onCreate με κενά δεδομένα και όταν έχετε την κλήση δεδομένων: