我有这个android应用程序,它基本上是一个总结10年级物理书的应用程序,它有四个单元,每个单元有多个主题,我想显示大量文本数据,以便用户向下滚动当用户按下主题时,该如何在应用程序上存储这些静态数据?以及使用哪种方法?我应该使用片段来显示内容吗?
每个单元都有许多这样的主题,当用户单击某些内容时,我想显示一大堆文本
答案 0 :(得分:0)
如何在应用程序中存储这些静态数据?
要存储内容,可以使用SQLite数据库。 Jetpack的Room Persistence Library是很好的起点。这是一个SQLite包装器,非常易于学习且易于使用。 This article将教您有关使用Room进行基本CRUD(创建,读取,更新和删除)的操作。
我应该使用片段来显示内容吗?
这取决于应用程序的要求。一个用例是,当您有一个通用的导航栏时,片段将是一个更好的选择。您可以在此answer中找到有关“何时使用片段”的更多案例信息。
@AJW
如果我已经有一个运行良好且自定义很多的SQLite数据库,该怎么办 CRUD查询。查询使用游标。我应该转换所有 现有查询并将其替换为新的会议室查询?
我还没有尝试完全迁移,也没有太多的经验。我尝试了一些示例CRUD操作,它看起来很酷。它避免了我在使用SQLiteOpenHelper
时曾经编写的许多样板代码,并且还支持LiveData,这是另一个很大的优点,可以帮助您自动获取数据库更新。总之,Room
看起来很有前途,我相信这是未来。我建议您在将所有sqlite查询转换为Room
之前先做一个示例项目。 tutorial可能会帮助您入门,而official docs也相当不错。
我可以在Room中使用SQLite查询吗?
可以。实际上,Room
需要查询才能为我们生成对象。
典型的SELECT
查询如下所示
@Query("SELECT * FROM users")
fun loadAllUsers(): List<User>
您可以从official docs
中找到更多示例