0

J'ai une application avec connexion utilisateur, il y a des données de base telles que le nom, email, âge, etc. mais je veux afficher seulement 2 données pour chaque utilisateur dans une vue de liste. Im à peu près un débutant en utilisant ListView donc je ne sais pas par où commencer. Surtout quand Im en utilisant Fragment:Comment afficher l'utilisateur dans ListView dans Fragment from Firebase?

Mon code ici:

 @Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    if (getArguments() != null) { 
     mParam1 = getArguments().getString(ARG_PARAM1); 
     mParam2 = getArguments().getString(ARG_PARAM2); 
    } 

    tutorList = (ListView) getView().findViewById(R.id.tutorListView); 

    tutorArrayList = new ArrayList<String>(); 
    tutorAdapter = new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_1, tutorArrayList); 

    databaseReference = FirebaseDatabase.getInstance().getReference().getRoot(); 


    databaseReference.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 


      databaseReference = FirebaseDatabase.getInstance().getReference().child("Users").child("Tutees").child(userID); 




     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }); 
} 

Je suis aussi confus obtenir que l'on mettre dans la méthode onCreate() méthode ou onCreateView() depuis im en utilisant le fragment.

voici ma structure JSON dans firebase:

 "Users" : { 
"Tutors" : { 

    "daBTEVRQagX7XbwPbXE5X1l3tg62" : { 
    "Age" : "22", 
    "District" : "miami", 
    "Email" : "[email protected]", 
    "Name" : "Ainul", 
    "Qualification" : "hnd", 
    "profileImageUrl" : "https://firebasestorage.googleapis.com/v0/b/tutorpal-1.appspot.com/o/profileImageUrl%2FdaBTEVRQagX7XbwPbXE5X1l3tg62?alt=media&token=a81ccf26-091d-4001-aa23-04665ad27173" 
    }, 
    "glk3Wi1lZZOQkt2UNsGit02DEym2" : { 
    "profileImageUrl" : "https://firebasestorage.googleapis.com/v0/b/tutorpal-1.appspot.com/o/profileImageUrl%2Fglk3Wi1lZZOQkt2UNsGit02DEym2?alt=media&token=61192989-93c8-4c55-bca0-9d2b3a6a78fe" 
    }, 
    "yE6ALyKEjVOoNLZcHEvHmeYkqON2" : { 
    "FullName" : "hai im ainul ", 
    "UserName" : "ainul", 
    "profileImageUrl" : "https://firebasestorage.googleapis.com/v0/b/tutorpal-1.appspot.com/o/profileImageUrl%2FyE6ALyKEjVOoNLZcHEvHmeYkqON2?alt=media&token=aa63a6f2-0154-4c27-b7ba-d8de89ee64bc" 
    } 
} 

}

Fondamentalement, je veux accéder aux utilisateurs-Tuteurs-Users-toutes leurs informations

Je veux aussi le listview à définir comme onclicklistener donc chaque fois que l'utilisateur clique sur un utilisateur, il amènera à une autre activité qui est le profileActivity de l'utilisateur. J'ai déjà la vue profileactivity fixée, mais ne sais pas comment faire d'un listView à ProfileActivity

+0

Le fragment n'a pas d'importance. Vous avez besoin d'une classe Adapter ajoutée à la liste pour afficher quoi que ce soit –

Répondre

0

D'abord, je vous suggère de lire à propos FirebaseUI bibliothèque et essayer de get examples working

Fondamentalement, vous manquez un ListView.setAdapter

Si vous voulez avoir des événements de clic, adapter.setOnItemClickListener

Je suis aussi confus obtenir que l'on mettre dans la méthode ou méthode onCreateView() onCreate() depuis im en utilisant le fragment.

Idéalement, seul onCreateView renvoie la vue gonflée. onViewCreated est l'endroit où vous utilisez findViewById pour un fragment. Vous ne pouvez pas appeler getView à partir de OnCreate