【问题标题】:How to populate a list view with a title and description in each item如何在每个项目中使用标题和描述填充列表视图
【发布时间】:2016-11-06 15:30:46
【问题描述】:

我有一个 Firebase 数据库设置,当在应用程序中按下一个按钮时,它会使用我的数据库中的值填充一个列表视图。我让它正常工作,但我在调试时注意到列表视图没有标题。我想我可以添加一个包含所有标题的新 String[] 列表,但我一直坚持如何添加到每个项目。这是我的按钮点击代码:

 public void viewJobsOnClick(View view) {
    final TextView tv = (TextView) findViewById(R.id.tvday);
    final RelativeLayout Rlitem = (RelativeLayout)findViewById(R.id.joblistitemslayout);
    final RelativeLayout Rllist = (RelativeLayout)findViewById(R.id.joblistviewlayout);
   //My adapter that is populating my listview
    final ArrayAdapter<String> jlistAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, JoblistArray);

    lv.setAdapter(jlistAdapter);

    if (joblistRootRef.child("Monday").toString().contains(DAY_OF_THE_WEEK)) {
 //Firebase child listener that sends the data to my adapter
        joblistRootRef.child("Monday").addChildEventListener(new ChildEventListener() {
            @Override
            public void onChildAdded(DataSnapshot dataSnapshot, String s) {

                String jlist = dataSnapshot.getValue(String.class);
                Rlitem.setVisibility(View.GONE);
                Rllist.setVisibility(View.VISIBLE);
                JoblistArray.add(jlist);

            }

【问题讨论】:

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


【解决方案1】:

您只保存 string.class obj 我认为您应该研究如何将 java obj (POJO) 保存到 firebase ,包括您的列表视图名称和您的列表视图详细信息 步骤 1 制作一个 POJO 你的 java 类并保存到 firebase ,如果你想知道什么是 pojo here is video you can watch

第二个在您的应用程序here is link to video 中使用firebaseListadupter,您将了解firebase listadupter 的工作原理

简单代码:firebaseListAdupter 的工作原理

 Firebase ref = new Firebase("https://<yourapp>.firebaseio.com");
     ListAdapter adapter = new FirebaseListAdapter<ChatMessage>(this, ChatMessage.class, android.R.layout.two_line_list_item, mRef)
     {
         protected void populateView(View view, ChatMessage chatMessage)
         {
             ((TextView)view.findViewById(android.R.id.text1)).setText(chatMessage.getName());
             ((TextView)view.findViewById(android.R.id.text2)).setText(chatMessage.getMessage());
         }
     };
     listView.setListAdapter(adapter);

【讨论】:

    猜你喜欢
    • 2020-06-18
    • 1970-01-01
    • 1970-01-01
    • 2017-08-10
    • 2012-08-29
    • 1970-01-01
    • 2012-01-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多