【发布时间】: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