我的应用程序的功能可以模仿wanelo之类的东西。如何在列表视图之间存储和传递信息
用户将在一个活动中输入他们想要购买的商品的搜索字词。他们会看到与该搜索词匹配的项目列表。所以,ListView
将包含Item
s。一个Item
有许多属性,其中主要有:
id
- 对应于Item
的ID在数据库中date_modified
- 时间戳知道Item
是否被更新remote_directory
- 一个URLItem
的资产的基础目录如图标和其他图像。 URL格式如下:http://my.domain.com/items/a1bc234d/
其中a1bc234d
是随机生成的,通过date_modified
播种。remote_dir_name
-remote_directory
的子串。从上面的例子中,这个值将是a1bc234d
。
从搜索结果列表中,用户可以标记稍后要查看的项目。这将触发几件事情:
- 首先,我想广告
Item
到不同的ListView
表示Item
S中的用户“下载”。 - 然后,我想实际下载所有的
Item
的数据:描述,所有资产在remote_directory
。这些东西将我应用的内部存储保存在文件夹remote_dir_name
:/data/data/my.app.package.name/files/a1bc234d/
。
这些“下载的”项目旨在在离线模式下可见。
该“已下载”ListView
对应于不同的活动,并且将具有显示Item
的下载状态进度条的列表项。此外,此ListView
应该是可编辑的:使用应该能够删除并重新排列列表中的Item
。
最后,“下载”ListView
需要持久。它应该保持秩序。搜索结果的ListView
不需要保留。
我在计算如何存储下载的Item
列表时遇到了很多麻烦。 “下载”ListView
需要知道何时更新列表项目的进度条,如果它正在下载。我认为将Item
存储在数据库中有点矫枉过正,因为我会不断更新一行的列,直到下载完成。我应该如何在这两个ListView
之间传递这个下载状态信息?
所以,我想我想知道ArrayLists应该驻留在哪里。我编辑了我的问题,包括downloadItems listview在一个Activity中,而searchItems listview在另一个中。通常,用户将在开始downloadItems活动之前进行搜索。 downloadedItems Activity应该如何检索ArrayList?从searchItems活动?这对我来说似乎有点奇怪......我想我认为downloadItems应该存在于一个中心位置,而不是活动的一部分? Lemme知道我是否在这里遇到了错误的事情! – user5243421
有几件事情。单身人士可以在这里使用。或者你可以将列表反序列化为一个json字符串并传递它,或者将该数组写入存储并将其拉回,或者将其写入服务器API并将其恢复。老实说,单身人士可能是最简单的。 – WIllJBD
啊,有趣。我没想过要用单身。因此,我想我想要序列化列表以将其永久存储在这些事件上:下载广告后,在用户“保存”其下载的项目编辑之后,更正? – user5243421