2017-06-02 67 views
-1

当我将一个活动留给另一个活动时,我努力保留数据或列表视图的项目,对于我的示例,我创建了简单的应用程序,点击将添加数字增加到列表视图,点击创建一个项目,如1另一个点击添加2等等。当在活动之间切换时,保持listview的数据保留

程序运行fin为主要活动,但然后我希望看到另一个活动的结果我称之为第二个活动,但问题是当我回到第二个活动的按钮回到主要活动,我会失去列表视图中的所有项目。

我一直在谷歌这么多的信息,但无法让我的头围绕它,所以请建议,请更详细一点,因为我是初学者,我认为实例状态或共享偏好将做这项工作,但我做事先不知道其中的任何

感谢,这里是主要活动和第二活动和画面输出 我的应用程序代码,对不起,我添加代码为图像becausethe网站一直说的代码需要缩进谢谢 main activity [主要出放] [2] second activity [第二个活动输出] [4]

+0

感谢大家谁试图帮助,我发现通过转移arraylist而不是单个项目的解决方案作品完美。 – SeekingKnowleges

回答

0

您需要以某种形式(以文件或数据库(本地或远程)保存ListView的数据)。存储列表视图没有直接的方法,但可以存储列表视图中的数据,然后设置它稍后当您切换回活动时进入ListView。

您需要注意的是,切换活动结果以调用android中的onPause()方法,并且如果数据未保存在当前活动中,那么当您移动到另一活动时它将会丢失。

+0

感谢快速回复,我需要的是创建临时表视图,以便在点击按钮添加的项目上点击按钮,删除按钮,因为我的数据是不固定的,所以无论是我可以添加或删除,therfore我认为这是很难将它保存在文件中,但我不知道我是否将它们保存在数据库中,然后如果我点击listview上的单个项目,我可以删除列表视图中的单个项目或不是? – SeekingKnowleges

+0

你正在寻找的是:保存数据在共享偏好(谷歌关于它)。您还可以根据保存的数据向列表视图添加或删除项目,但实施将取决于您的具体要求。 –

+0

一个建议,共享首选项只允许将数据保存在Key:Value对中,所以明智地使用它。 –

0

所有值添加到阵列中,它传递给适配器,然后单击列表视图项后,作出要切换您的活动的目的(从一个活动到第二个活动的意思),同时实施意图,也传递你的数组,使用intent.put extra。然后,您将在第二个活动中获取数组,并返回到之前的活动,再次传递一个意图(使用数组),并将您的数组放入先前的活动中,并将其传递到适配器中。

+0

谢谢,我试过它没有运气,可能是我不知道但是谢谢 – SeekingKnowleges