【问题标题】:Show new items first with Firebase Database首先使用 Firebase 数据库显示新项目
【发布时间】:2017-04-27 11:45:24
【问题描述】:

我的 Firebase 数据库有问题。

当我从数据库中获取数据时,我会在顶部获取旧数据。如何更改它以获取顶部的新数据?

in firebase console new data also are at the bottom

我正在为 FirebaseAdapter 使用 listView。

  // setting adapter
             private void showAdapter() { 
                    fBListAdapter = new FirebaseListAdapter<DiscountProduct>(ListDiscountActivity.this, DiscountProduct.class, R.layout.model_of_product, refDiscount) {
                        @Override
                        protected void populateView(View v, DiscountProduct model, int position) {
                            TextView nameProduct;

                            nameProduct = (TextView) .findViewById(R.id.modelCardNameProduct);

                            nameProduct.setText(model.getNameProduct());
                        }

                    };

                    listofDiscountProducts.setAdapter(fBListAdapter); //It's ListView on Activity
                }

在 firebase 数据库中添加新数据无效

 //adding data to firebase database
     public static void createNewDiscountPost(String nameProduct) {
            String key = refDiscount.push().getKey();
            DiscountPost discountPost = new DiscountPost(nameProduct);

            Map<String, Object> createNewDiscountPost = discountPost.toMap();

            Map<String, Object> childUpdates = new HashMap<>();
            childUpdates.put("/" + key, createNewDiscountPost);

            refDiscount.updateChildren(childUpdates);
        }

【问题讨论】:

  • 要在查询中获取带有推送 id 的最新记录(正如一些来到此线程的人会尝试做的那样),请使用 limitToLast(n),它将为您提供列表末尾的项目。

标签: android listview firebase firebase-realtime-database


【解决方案1】:

在您的列表视图适配器中制作 getitem 以相反的顺序返回您的项目

@Override
public Object getItem(int position) {
   return super.getItem(super.getCount() - position - 1);
}

或者你可以试试listView.setStackFromBottom(true);

有关数据如何排序的更多信息,请访问官方文档here 还有this 链接

【讨论】:

  • 我应该在哪里覆盖这个方法?
  • 在您的适配器中
  • 哦,明白了。谢谢
猜你喜欢
  • 1970-01-01
  • 2019-10-14
  • 1970-01-01
  • 2023-03-17
  • 1970-01-01
  • 1970-01-01
  • 2019-09-28
  • 1970-01-01
  • 2021-06-18
相关资源
最近更新 更多