2016-09-07 10 views
8

Bu kodu vardır öğeyi dışlamak için: !dataSnapshot.hasChild(getUid())true isenasıl benim <code>populateViewHolder</code> bir FirebaseRecyclerAdapter

public void populateViewHolder(final CampaignHolder viewHolder, final Campaign campaign, final int position) { 
      String k = getRef(position).getKey(); 
      ref.child(k).child("users").addListenerForSingleValueEvent(new ValueEventListener() { 
       @Override 
       public void onDataChange(DataSnapshot dataSnapshot) { 
        if (!dataSnapshot.hasChild(getUid())) { 
         //Something... 
        } 
       } 

       @Override 
       public void onCancelled(DatabaseError databaseError) { 

       } 
      }); 
      //...Populating the viewholder... 

Ben öğeyi kaldırmak istiyor, aksi takdirde sadece normal ViewHolder doldurma devam ediyor. Ben istemiyorum ben veritabanından öğe kaldırmak istemiyorum, sadece FirebaseRecyclerAdapter dan gitti istiyorum. Bunu yapmak için hangi yöntem kullanılabilir?


Düzenleme: tesbit edilmemişse olduğu gibi ben HALA bu sorun için bir çözüm arıyorum. Benim çözümüm YÜKSEK cesaret kırıcı ve çok kötü bir uygulamadır ve bunu kendim kullanarak yeniden değerlendirdim.

+0

dahaki sefere benziyor Ben 400 rep Bounty –

+0

Hii vermek gerekecek, ben dosyalanmış tarih <= 1 saat ise gibi Firebase belirli kayıtları dışlamak istediğiniz .. herhangi var mı ipucu? Teşekkürler! –

cevap

1

Güncelleme: Bu son derece kötü bir uygulama ve çok glitchy. senin RecyclerView çok glitchy yapacak ve kullanıcılarınız istiyorum nelerin olan aşırı veri yükleme, neden olacaktır ÇOK HERKES bunun beri bu kullanmak vazgeçirmek.

Öyle gibi onu manuel olarak yapmak kadar sona erdi: x satır almak ve GONE onun görünürlüğünü ayarlamak true ise

if(x) 
    viewHolder.itemView.setVisibility(View.GONE); //itemView is a view provided by Android, no need to initiate it. 

Bu, diyor. Bu benim için problemi çözdü. Bunu muhtemelen GitHub'da engelleyeceğim.

+0

Gitmeye ayarlamayın, yüksekliğini 0 olarak ayarlayın (ve diğer öğeler için yüksekliği normal olarak ayarlayın) – EpicPandaForce

İlgili konular