У меня есть проект Android, и я использую базу данных Firebase Realtime для хранения моих данных.
Проблема - сначала отображаются поля EditTexts в моей деятельности, а затем временной промежуток около 5 секунд, когда Мой EditTexts заполнен данными, которые я читаю из базы данных.
Вот код -
private void updatePersonalInfo() {
DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("resumeDataOfUser").child(userPhoneNumber).child("Personal Info");
reference.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot snapshot : dataSnapshot.getChildren()) {
map.put(snapshot.getKey().toString(),snapshot.getValue().toString());
}
if(!map.containsKey("linkedInUserName")){
for( HashMap.Entry<String, String> entry : map.entrySet() ){
if(entry.getKey().equals("pincode")) mAddressPinCode.getEditText().setText(entry.getValue());
if(entry.getKey().equals("otherPhone")) mOtherPhoneNumber.getEditText().setText(entry.getValue());
if(entry.getKey().equals("city")) mAddressCity.getEditText().setText(entry.getValue());
if(entry.getKey().equals("name")) mFullName.getEditText().setText(entry.getValue());
if(entry.getKey().equals("state")) mAddressState.setText(entry.getValue());
if(entry.getKey().equals("email")) mEmail.getEditText().setText(entry.getValue());
}
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
Это структура базы данных -

Есть ли способ ускорить этот процесс, потому что я не думаю, что мой подход установки данных для соответствующих EditTexts является лучшим и самым быстрым. Буду признателен за любую помощь.
Я отображаю такие данные
