2011-12-15 72 views
0

我的Android应用程序高度利用后端API;基本上,所有信息都是从Web服务器查询并呈现在“活动”上。到目前为止,我已将应用程序设计为“只读”。如何编辑和刷新Android活动中的JSON数据?

例如,MainActivity首先查询服务器的JSON数据并在列表视图中显示数据。用户可以通过点击打开一个特定的列表项目。项目的JSON数据作为JSONOBject(data.getObject(listItemPosition).toString())的字符串表示形式传递给新活动(SubActivity),以便不需要对服务器进行新查询。

但是,现在我面临着一个挑战,因为应用程序的第二部分正在开发中:如何在用户修改Activity之后刷新数据。比方说,MainActivity有一个包含图像注释的图像列表,SubActivity显示单个图像,注释和一些附加信息。现在我想开发一个功能,用户可以在SubActivity中编辑图像注释。

我应该如何处理刷新MainActivity中的数据& SubActivity?我应该直接编辑JSON对象吗(来自SubActivity)?我应该通知MainActivity重新加载数据吗?任何其他最佳做法?

回答

1

如果您使用的ArrayList和customarrayadapters则是你可以通知数据对象(和UI对象)对自己进行刷新和更新视图

您可以编辑JSON对象直接,它不象他们是神圣的,但JSONArray可能有点慢。

你可以通过做startActivityforResult方法和onActivityResult方法

通知活动你需要使用此信息更新服务器?只需在接受此信息的服务器上进行新的API调用

+0

是的,服务器更新部分没问题(API调用)。 startActivityResult将是一个选项,是否使用它作为这种操作的“标准”?关于编辑JSON对象,我认为从SubActivity编辑MainActivity JSON数据是不可能的。 – 2011-12-16 07:06:10