【问题标题】:Android DB and List view design [closed]Android DB和列表视图设计[关闭]
【发布时间】:2013-06-13 22:31:57
【问题描述】:

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

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

首页:

Apple 
Orange

第二页:

Pink
Vitamic 
Image 

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

第三页

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

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

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

【问题讨论】:

  • 您是否尝试过阅读任何有关设计数据库的初级教程?
  • @MarcinOrlowski,我不是要示例代码或解决我的问题。我只是想了解哪种方法最适合解决此类问题。毫无疑问是愚蠢的,它只取决于个人技能和经验:(

标签: android list listview view


【解决方案1】:

想到的设计是在您的应用程序中使用 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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多