如何在Firebase的Fragment中的ListView中显示用户?

时间:2017-10-15 17:46:31

标签: android listview firebase-realtime-database android-arrayadapter

我有一个用户登录的应用程序,有基本数据,如姓名,电子邮件,年龄等,但我想在列表视图中只为每个用户显示2个数据。我几乎是使用ListView的初学者,所以我不知道从哪里开始。特别是当我使用片段时:

我的代码在这里:

     @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) {

        }
    });
}

我也很困惑哪一个放入onCreate()方法或onCreateView()方法,因为我正在使用片段。

这是我在firebase中的json结构:

       "Users" : {
"Tutors" : {

  "daBTEVRQagX7XbwPbXE5X1l3tg62" : {
    "Age" : "22",
    "District" : "miami",
    "Email" : "tutor@gmail.com",
    "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"
  }
}

}

基本上我想访问用户 - 导师 - 用户 - 所有他们的信息

我还希望将listview设置为onclicklistener,因此每当用户单击一个用户时,它将带来另一个活动,即用户的profileActivity。我已经有了profileactivity视图集,但是不知道如何从listView到ProfileActivity

1 个答案:

答案 0 :(得分:1)

首先,我建议您阅读FirebaseUI库并尝试get examples working

基本上,您错过了ListView.setAdapter

如果您想点击活动,adapter.setOnItemClickListener

  

我也很困惑哪一个放入onCreate()方法或onCreateView()方法,因为我正在使用片段。

理想情况下,只有onCreateView才会返回膨胀的视图。 onViewCreated 是您将findViewById用于片段的位置。 您无法从onCreate

调用getView