Increment list with Parse LiveQuery (Android)?



我正在尝试使用以下库实时显示数据库中出现的新对象的数量:https://github.com/parse-community/ParseLiveQuery-Android。

我正在侦听出现在通知类中的新对象。每次创建新通知时,我将如何在下面的 StringHolder 中递增该值?我想 UI 是否更新是另一回事。但是我至少可以实时增加该列表吗?

ParseLiveQueryClient parseLiveQueryClient = ParseLiveQueryClient.Factory.getClient();
ParseQuery < ParseObject > parseQuery = ParseQuery.getQuery(ParseConstants.CLASS_NOTIFICATIONS);
parseQuery.whereEqualTo(ParseConstants.KEY_READ_STATE, false);
SubscriptionHandling < ParseObject > subscriptionHandling = parseLiveQueryClient.subscribe(parseQuery);
subscriptionHandling.handleEvents(new SubscriptionHandling.HandleEventsCallback < ParseObject > () {
 @Override
 public void onEvents(ParseQuery < ParseObject > query, SubscriptionHandling.Event event, ParseObject object) {
  // HANDLING all events
  List<ParseObject> newNotifications = new ArrayList<>();
  newNotifications.add(object);
  Log.w(getLocalClassName(), "New notification found! " + object.toString());
  result.updateBadge(5, new StringHolder(newNotifications.size() + ""));
 }
});

我认为您每次创建onEvent时都会声明newNotifications变量。尝试将此行放在共享上下文中,例如 和 活动或单例:

List<ParseObject> newNotifications = new ArrayList<>();

最新更新