徐利峰:
今天花费将近3个多小时的时间,将以前的Android知识回顾了一遍,同时自己针对自己的任务做了一个小Demo。
主要用到的是ViewModel来存储页面数据,Respositry仓库来进行数据的增删改查,还有一个Database数据库,一个Dao和展示数据的Adapter
在数据的增删改查利用的事AsynceTask的副线程,创建singleton单实例数据库。
在实现的过程中,出现的问题有:
对AsynceTask的线程问题不熟悉,一开始的做法是直接在活动中强制在主线程执行增删改查,查了相关操作后才发现可以用AsynceTask的副线程,即安全又可靠。
Word.java
WordDao.java
WordDataBase.java
WordRepository.java(仓库类)
WordViewModel(页面数据)
MyAdapter(适配器)
MainActivity
页面实现:
卡片布局
点击视图切换后,跟换为正常布局:
点击相应的item,会跳转到有道词典来翻译当前的单词:
例如点击watermelon这个单词后:
就会跳转掉到:
-------------------------------------------------------------------------------------------------------------------------------------------------
明天要做的是:利用今天复习的东西,先实现基础的整体轮廓的布局,再将python爬取的新闻信息做成卡片展示
李浩:实时评论
效果图:
具体过程:
1、点击输入框获取焦点之后会弹出软键盘;
2、当内容为空的时候无法发送评论;
3、发送之后,文本框会自动失去焦点,并且软键盘消失;
4、发送之后,评论会立刻出现在评论区的第一个位置,并且也会写入云端数据库;
总结:其实这个功能很简单,是我想复杂了,具体实现方法是在底部固定一个文本框和按钮即可,点击之后开启线程发送数据,云端正常接收之后会返回此评论数据,客户端接收之后会在评论区的容器中的第一位插入该条评论;如果云端没有正常接收,即代表插入数据库不成功,那么软键盘不会消失并且会提示用户重新点击。早上我想的是点击之后弹出PopWindow框,试了之后感觉体验感不好,就放弃这个想法了,改用固定的方式。