【移动应用开发】ContentProvider实现我的图书馆

时间:2024-10-27 08:36:07

续上一篇博客【移动应用开发】Android持久化技术-****博客

目录

一、具体步骤

二、运行截图

三、源代码

1. 在SharePreferences项目下新建一个DatabaseProvider

2. 在AndroidManifest.xml中声明权限和注册该provider

3. 新建一个名为ProviderTest的应用程序

4. 布局文件

① activity_main.xml

② book_item.xml

③ activity_book.xml

④ book_detail.xml

5. 实体类

① Book

② Category

6. 适配器

① BookAdapter

② BookDetailsAdapter

6. Activity

① MainActivity

② BookActivity


一、具体步骤

  1. 创建一个对外的ContentProvider。
  2. 新建一个应用程序,包含一个MainActivity,为默认登陆Activity。
  • 其布局包含:1个RecyclerView、1个「查询」按钮。
  • RecyclerView用来展示书单,展示的内容包括:书名、作者、价格。
  • 按钮用来查询「网上图书馆」应用中的所有图书信息,用来更新RecyclerView中的数据。
  • RecyclerView的列项可以点击;点击时,跳转到BookActivity

    3. BookActivity用于展示图书的所有信息。

  • 其布局包含1个RecyclerView和1个「返回」按钮。
  • RecyclerView完整展示了图书的所有信息,即书名、作者、价格、页数、类别。
  • 「返回」按钮则用来返回到MainActivity。

二、运行截图

在SharePreferences项目往数据库添加图书如下:

启动ProviderTest,可以看到两个项目同时运行:

 

点击查询按钮刷新图书信息:

点击具体的一项进入图书详情页面(这里的图书类别我只用类别id显示没显示对应的类别名称)

点击返回按钮返回主页:

 

三、源代码

1. 在SharePreferences项目下新建一个DatabaseProvider

2. 在AndroidManifest.xml中声明权限和注册该provider

 

3. 新建一个名为ProviderTest的应用程序

 

4. 布局文件

① activity_main.xml

 

② book_item.xml

 

③ activity_book.xml

 

④ book_detail.xml

5. 实体类

① Book

 

② Category

 

6. 适配器

① BookAdapter

 

② BookDetailsAdapter

 

6. Activity

① MainActivity

 

② BookActivity