2016-09-11 2 views
1

Я использую адаптер списка адаптеров Firebase, но всякий раз, когда активность открывается, требуется много времени, например, 5-8 секунд, прежде чем он отобразит что-то в списке. В моей сети нет проблем, я не понимаю, где именно проблема. Мой код такой.Firebase UI задержка в заполнении View?

Я выборки данных внутри фрагмента как этот

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     // Inflate the layout for this fragment 
     View view= inflater.inflate(R.layout.fragment_coming, container, false); 

     final DatabaseReference mDatabase = FirebaseDatabase.getInstance().getReference(); 
     mDatabase.keepSynced(true); 
     mAuth = FirebaseAuth.getInstance(); 

     comingList =(ListView)view.findViewById(R.id.listViewComing); 

     FirebaseListAdapter<userData> firebaseListAdapter=new FirebaseListAdapter<userData>(
       getActivity(), 
       userData.class, 
       R.layout.item_list, 
       mDatabase.child("coming")) 
     { 

      @Override 
      protected void populateView(View v, userData model, int position) { 

       ImageView imageView = (ImageView) v.findViewById(R.id.imageViewList); 
       TextView textView = (TextView) v.findViewById(R.id.textViewList); 
       textView.setText(model.getName()); 
       Glide.with(imageView.getContext()).load(Uri.parse(model.getImageURI())).into(imageView); 

      } 
     }; 

     comingList.setAdapter(firebaseListAdapter); 

     return view; 

    } 

Поэтому в основном мне нужно решение для

  1. Fetch данные быстро
  2. Как реализовать добавить индикатор прогресса в фрагменте для firebaseUI ?

ответ

1

Я решил эту проблему, позволяя автономный кэш Firebase

Firebase.getDefaultConfig().setPersistenceEnabled(true);