-1

我有水果信息列表,水果名称。一个水果对应另一个列表,维生素,颜色对应于水果的详细信息,它含有什么维生素,水果的图像是什么)。现在从这个页面,它将导航一些其他信息(即,如果用户今天被吃掉了)。

所以我面临的问题是我在设计数据结构时应该考虑什么。

第一页:

Apple 
Orange

第二页:

Pink
Vitamic 
Image 

本页中的每一项都对应上一页项的具体信息,这里只显示苹果的示例信息

第三页

Apple-> I have eaten today | I have not eaten today 

用户将被允许查看与第一页项目相对应的第三页。例如。如果你标记你今天吃了苹果,那么它会将第三页更新为“吃过”,但如果你今天没有吃苹果,那么它就不应该显示。所以基本上每个水果项目都对应于用户是否被吃掉。

请建议我如何设计我的数据库和列表视图结构?是一个行项目将对应一个表。请与我分享任何教程或示例代码。非常感谢。

4

1 回答 1

2

想到的设计是在您的应用程序中使用 ORM。这种类型的数据访问将允许您轻松地在代码中存储和检索对象。您可以在此处下载 ORM 库 OrmLite:http: //ormlite.com/releases/

按照本教程:http ://sourabhsaldi.blogspot.ca/2012/10/ormlite-tutorial.html ,您应该创建一个类并注释您需要存储的任何字段,如下所示:

@DatabaseTable(tableName = "fruit")
public class Fruit {
    @DatabaseField(columnName = "_id", generatedId = true)
    private long _id;

    @DatabaseField(columnName = "name")
    private String name;

    @DatabaseField(columnName = "color")
    private String color;

    ...
}

然后创建一个扩展 OrmLiteSqliteOpenHelper 的类,并按照教程中的说明设置数据库。

然后为您的 ListView 创建一个适配器,以使用存储在本地数据库中的对象。本教程应该可以帮助您做到这一点:http ://www.vogella.com/articles/AndroidListView/article.html

于 2013-06-13T23:27:35.627 回答