如何将notifyDataSetChanged从一个活动发送到上一个活动

时间:2015-12-13 00:47:02

标签: android listview

我在活动中有一个listView。 listView包含2个按钮和一个在单击按钮时更新的字段。在列表上单击OnView打开相同项目的新活动(项目的详细描述)。

在新活动中,我有2个按钮和一个在单击按钮时更新的字段。

问题是在详细活动更新后,如果用户按下按钮转到上一个活动,则更新的字段值不会反映在那里。

如何将notifyDataSetChanged从详细活动发送到之前的活动?

public void onResume()是我们可以做些什么的地方吗?

2 个答案:

答案 0 :(得分:1)

结果的第二个活动

var FeedParser = require('feedparser'),
Promise = require('bluebird'),
request = require('request');

function getDate() {
  return new Promise(function(resolve, reject){
    var feed = new FeedParser();
    request('rss.xml').on('error', reject).pipe(feed);
    feed.on('meta',function() {
      resolve(this.meta.date);
    }).on('error', reject);
  });
}

然后在

中捕获结果
startActivityForResult(...)

从那里你可以通过比较request&来调用notifyDataSetChanged。结果代码

答案 1 :(得分:1)

您确实可以在notifyDataSetChanged()中致电onResume(),但我建议您改用startActivityForResult()。用户按下后,您可以onActivityResult()(使用resultCode == RESULT_CANCELED)拨打notifyDataSetChanged()

后一种方法的优点是可以将一些数据从第二个活动传递到第一个活动(在Intent中),例如一个告诉是否通知适配器的布尔值。然后,您在onActivityResult()中查看此数据,然后决定要做什么。