Problem: Firebase-Daten werden nach der Benutzeranmeldung nicht in ListView im Hauptmenübildschirm angezeigt.
Code Exemplarische Vorgehensweise:
public void makeItem () { lv = findViewById(R.id.listView); db = FirebaseDatabase.getInstance().getReference(); helper = new FirebaseHelper(db); adapter= new AdapterItem(this,helper.retrive()); lv.setAdapter(adapter); }
public AdapterItem(Context c, ArrayList<CustomListAdapter> customListAdapters) { this.c = c; this.customListAdapters = customListAdapters; }
private String ItemName; // Field in CustomListAdapter class ItemName.setText(CLA.getItemName()); // Getter in AdapterItem class
Problem:
Die Getter-Funktion in der AdapterItem-Klasse heißt getItemName() mit einem Großbuchstaben „ ICH'. Firebase erwartet jedoch, dass der Feldname itemName mit einem Kleinbuchstaben „i“ in der CustomListAdapter-Klasse ist.
Lösungen:
Lösung 1: Modell umbenennen Klassenfelder
Aktualisieren Sie die CustomListAdapter-Klasse, um der Java-Benennung zu folgen Konventionen:
public class CustomListAdapter { private String itemName, quantity, serialNo, supplierName, supplierEmail, supplierPhone; }
Lösung 2: Annotationen verwenden
Behalten Sie die CustomListAdapter-Klasse bei, wie sie ist, und verwenden Sie @PropertyName-Annotationen vor den Gettern:
@PropertyName("ItemName") public String getItemName() { return ItemName; }
Zusätzlich Überlegungen:
Stellen Sie sicher, dass die Daten in der Firebase-Datenbank korrekt und wie erwartet formatiert sind.
Das obige ist der detaillierte Inhalt vonWarum werden meine Firebase-Daten nach der Anmeldung nicht in meiner Android-ListView angezeigt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!