今日简单实现了体温的记录,以及接入了丁香医生的疫情信息。
接下来三天准备学习一下安卓爬取指定网页数据。
1、数据库
1、entity
只需要简单的记录体温和时间即可,所以entity的设计并不复杂。
1 | package com.example.fightvirus; |
2、dao
只需要实现添加删除和查询所有功能即可。
1 | package com.example.fightvirus; |
3、database
1 | package com.example.fightvirus; |
4、repository
这里还是采用了通过工厂来进行dao的操作。
1 | package com.example.fightvirus; |
5、viewModel
通过viewModel来进行对repository操作。
1 | package com.example.fightvirus; |
2、界面
本次采用了底部导航栏来进行体温记录以及疫情信息查看,所以需要自己设计一个menu。
1、menu
2、体温列表页面
使用floatingActionButton来跳转到体温记录页面。
3、丁香医生接入页面
因为使用了AgentWeb,所以该页面不用进行页面的布局等处理,只需将顶层容器换为LinearLayout即可。
1 |
|
4、体温记录页面
5、页面之间的关系(navigation)
- 体温列表页面和体温添加页面有先后关系,建立关联。
- 体温列表页面和丁香医生显示页面并无先后关系,不用处理。
6、主页面
3、主要逻辑代码
1、主界面
1 | package com.example.fightvirus; |
主界面主要加上底部导航栏的实现代码以及进入体温记录页面后的返回操作。
2、体温列表
1 | package com.example.fightvirus; |
主要的操作和前天的单词记录程序相似。
3、体温记录页面
1 | package com.example.fightvirus; |
这个界面比较简单,加上了输入框的监听,如果没有输入内容便不能点击添加按钮。
4、丁香医生接入页面
1 | package com.example.fightvirus; |
刚开始想用webView来实现接入,但是貌似原生的webView性能不好,所以导致进入该页面时网页不出现。于是在热心网友老哥的指导下使用了AgentWeb。