2015-01-06 122 views
-2

我有一个名为FeedActivity的Activity,它有一些数据的ArrayList。在独立类中作为FeedAdapter的适配器也可以填充FeedActivity中的列表视图。 FeedDetailsActivity,它显示FeedAdapter中列表视图行的详细信息(列表视图单行数据)。 我想要做的是将数组列表从FeedActivity传递给FeedAdpter的构造函数,并以这种方式在FeedAdapter类中创建一个新的ArrayList副本。当我从FeedAdapter的FeedDetails中显示该特定提要的所有信息(listview单行数据)时。现在,用户可以从FeedDetailActivity中更改Feed中的数据。 我的问题是,当我在FeedDetailActivity中更改数据时,它必须反映在FeedActivity的列表视图中。但该列表正在填充来自FeedAdapter的重复数组列表的数据。我怎样才能做到这一点 。请让我知道,因为我已经很多尝试做到这一点。如何更新android中另一个活动的活动值?

+0

如果我使用一个静态的ArrayList那么这将是更容易,但因为这是不是一个很好的方法,因为它同时具有一个大的静态ararylist – rahul

+0

爵士消耗大量的内存,你的解释是相当详细,但张贴您的代码将让人们帮助您基于您的代码.. – Elltz

回答

0

这是一个Java逻辑问题,而不是针对Android。

我的理解是,你想更新当前活动的前一个活动。你可以创建回调方法,或者使用Intents,或者让你的数组成为静态的(然后它将可以从两个类中访问)。

另一种方法是杀死先前的活动并重新启动该活动,将更新后的ArrayList作为额外数据传递。

+0

我做了什么 1.制作静态arraylist(工作,但消耗大量内存) 2.可以杀死并重新启动活动,但后来我将不得不再次调用服务器来获取数据,并且还必须管理listview位置。 3.来自适配器的startActivityForResult,但是当我返回到我的主要活动时,这被立即调用 – rahul

+0

我也列出了其他方式。最好的方法是创建回调方法。 – omerjerk

+0

这是有道理的。让我试试它 – rahul

相关问题