在Android应用程序中保持状态的高级设计

时间:2015-07-20 02:32:31

标签: android savestate

我正在寻找一些关于如何为我的Android应用程序保持状态的煽动:

我的应用程序是一个清单应用程序,用户可以在主菜单中创建一个新的清单,它将把它们带到一个控制4个碎片的活动(每个碎片都是我的清单的一部分)。我试图找出如何保持状态,以便当用户创建新的检查表并导航到主菜单时,当他们返回检查表时,一切都是以前的状态。

2 个答案:

答案 0 :(得分:1)

我认为您最好的办法是创建一个本地数据库来存储所有清单。访问速度非常快,因此您的用户不会注意到任何事情。唯一的缺点是在您发布应用程序后更新数据库设计所需的工作。

Android使用SQLite。有许多tutos可用。

编辑: 您描述应用程序的方式,我建议您为清单创建至少一个表,并在桌面上创建任务。

核对表将包含以下列:_id,name,tasks_count,creation_date,last_edition_date,importance,due_date,all_complete

任务将包含以下列:_id,checklist_id,name,description,date_created,date_completed,importance,due_date

我的建议是首先创建比您需要的更多的列。为未来的功能设计数据库,即使您可能永远不会实现它们。没有什么比在开发期间多次更改表的设计更痛苦,在部署之后甚至更糟。

答案 1 :(得分:1)

如果您的核对清单很简单,您可以使用Android's SharedPreferences

您可以保存字符串列表。这比使用SQLite要容易得多,但它显然不那么灵活,而且不适合大对象。

如果你打算做更复杂的事情,那么你最好使用SQLite