本篇记录的是使用Jsoup框架爬取网页内容,结合Android的RecyclerView,从而实现批量下载小说的功能(也是我的APP星之小说下载器Android版的核心功能),思路仅供参考
本文使用了AsyncTask来实现下载功能,不懂使用的可以参考一下我的文章Android开发——实现子线程更新UI
RecyclerView的使用这里也略过了,详情请看Android ListView与RecycleView的对比使用
思路分析
RecyclerView相关概念
RecyclerView的使用大家都熟悉了,我们主要继承适配器,实现了适配器中的三个方法
主要流程:
适配器获得我们写的Item.xml布局,之后根据此布局,创建了一个ViewHolder,然后,就把数据源(List存储的实体类)逐一地设置到我们写的Item.xml布局文件中(找到某个控件的实例,之后进行setText等操作)
Item进度条更新
思路:
我们的item中包含有进度条,想要实现进度条更新效果,按照之前的常理,得找到这个进度条的实例对象,然后设置进度条的进度。
问题来了——
1.如何找到进度条这个实例对象呢?
View类中提供了一个方法findViewById
,通过此方法就可以找到某个实例对象,所以我们要获得进度条所在的那个root View对象(也就是itemView)
2.如何获得itemView?
RecyclerView中,提供了一个方法findViewHolderForAdapterPosition
用来找到某个位置的ViewHolde