Listview не отображается фрагментом в tablayout, и я получаю данные из базы данных Firebase в реальном времени.
Я пытался использовать listfragment, но он не работал.
public class AdminManagerListFragment extends Fragment {
private ListView managersList;
private ArrayList<String> managers;
private ArrayAdapter<String> adapter;
public AdminManagerListFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_admin_manager_list, container, false);
managers = new ArrayList<String>();
listOfManagers();
adapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, managers);
managersList = (ListView) view.findViewById(R.id.listView);
managersList.setAdapter(adapter);
return view;
}
private void listOfManagers() {
FirebaseDatabase.getInstance().getReference().child("users").addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
String value = (String) dataSnapshot.child("userType").getValue();
if (value.equals("manager")) {
String username = (String) dataSnapshot.child("username").getValue();
managers.add(username);
adapter.notifyDataSetChanged();
}
}
@Override
public void onChildChanged(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
}
@Override
public void onChildRemoved(@NonNull DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(@NonNull DataSnapshot dataSnapshot, @Nullable String s) {
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
}
});
}
}
Я хочуотобразить список в фрагменте, который содержит данные, загруженные из базы данных.