- Forum-Beiträge: 187
12.05.2020, 21:33:48 via Website
12.05.2020 21:33:48 via Website
Hallo zusammen
Hier bereits schon mein nächstes Problem mit FIrebase
Ich habe meine Datenbank so weit das ich sie jetzt sinnvoll auslesen kann, viele daten sind es noch nicht, und trotzdem ist da eine spührbare ladezeit von mindesten einer halben sekunde, bei drei einträgen.
Hier der Json der abgerufen wird:
"gruppe" : {
"-M739MIOjwbiDqCD8L4R" : {
"land" : "Angola",
"mail" : "madad@gmx.ch",
"name" : "madad",
"passwort" : "c4ca4238a0b923820dcc509a6f75849b"
},
"-M73WWzMwSfT4JhpNkQq" : {
"land" : "Pakistan",
"mail" : "Noerio@Noerio.ch",
"name" : "Noerio",
"passwort" : "c4ca4238a0b923820dcc509a6f75849b"
},
"-M73Y-QC5idHA-X8ghYs" : {
"land" : "Anguilla",
"mail" : "wetlino@wetlino.ch",
"name" : "wetlino",
"passwort" : "c81e728d9d4c2f636f067f89cc14862c"
}
Das sindja nur drei....
der AbrufCode sieht inetwa so aus
DatabaseReference dbf = fb.GET_mannschaften(id_user);
dbf.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
if(dataSnapshot.exists()){
LinearLayout ll = v.findViewById(R.id.list);
ll.removeAllViews();
for(DataSnapshot ds:dataSnapshot.getChildren()) {
final String id_benutzer = ds.getKey();
final String team_name= ds.child(FirebaseTable.mannschaften.name).getValue(String.class);
TextView tv = (TextView) LayoutInflater.from(ctx).inflate(R.layout.standart_textview, null);
tv.setText(team_name);
ll.addView(tv);
///usw
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
Ich habe bemerkt, wenn ich z.b. die eine person aufrufe, und die Layouts bereits gesetzt sind ( Bearbeitungsformular) , geht es sauschnell. Aber wenn ich eine Liste mit TextViews füllen will geht es viel länger, doch wie soll man das sonst machen? Oder bin ich wieder mal total daneben mit dem was ich will?
Vielen dank schonmal im vorraus!
— geändert am 12.05.2020, 21:34:15
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.