Я хочу добавить объект с именем funny_momments_row
к ArrayList
с именем data
, но он не добавляется.Я проверяю, что data
пусто или не использует метод isEmpty
впоследствии.Код работает нормально до этой строки:
funny_momments_row current = new funny_momments_row(dataSnapshot.child("like").getValue().toString(),dataSnapshot.child("url").getValue().toString());
Вот полный класс:
public class funny_moments extends Fragment {
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference myRef = database.getReference("funnymomments");
ArrayList<funny_momments_row> data;
TextView tesgting;
private RecyclerView mRecyclerView;
public funny_moments() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_funny_moments, container, false);
mRecyclerView = (RecyclerView) view.findViewById(R.id.recylerview);
tesgting = (TextView) view.findViewById(R.id.test);
data = new ArrayList<>();
getData();
// Inflate the layout for this fragment
return view;
}
public void getData() {
funny_momments_row lu = new funny_momments_row("1", "hi");
myRef.child("video 0").setValue(lu);
myRef.child("video 0").addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot videoSnapshot: dataSnapshot.getChildren()) {
funny_momments_row current = new funny_momments_row(dataSnapshot.child("like").getValue().toString(), dataSnapshot.child("url").getValue().toString());
data.add(current);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
if (data.isEmpty()) {
tesgting.setText("hi");
}
}
}
