前言
最近在看RecyclerView
,一个要替代ListView
, GridView
的伟大的控件。网上资料应接不暇, 套路是在讲解基本的用法。当然,本系列文章也要落入俗套, 但是,重点是我在使用RecyclerView
过程的代码重构,准确的说是使用泛型来减少RecyclerView
中的ViewHolder
代码,以及重复使用RecyclerView.Adapter
。
目标
这是一系列的文章, 会讲解到RecyclerView
在我个人项目的使用, 以及如何简单重构代码。本篇是开篇之作, 交代一下项目背景情况。不完全模仿豆瓣App 书影音中的 【电影 & 读书】2个Tab。
左边是自己项目展示,右边是豆瓣的展示。豆瓣没有把所有的数据开放,我也没有注册,所以内容会少一些, 这不影响项目的展示。
项目背景
练手的项目, 主要是熟练使用Android支持包中的控件以及成熟的网络请求框架
新增控件
RecyclerView
CardView
CoordinatorLayout
AppBarLayout
-
Toolbar
这些会在项目中使用,具体可以参看后续释放的源码。
网络请求框架
okHttp
-
Retrofit
一开始使用okHttp
, 后来选择Retrofit + RxJava
(简单使用RxJava), 没听说这些的童鞋,该醒醒了, 需要掌握这些火遍天的新技术点。网络数据来源于豆瓣的公开接口: 豆瓣电影V2
开发工具
Android Studio 1.5
关于代码
源码还没有整理好,按照流行话语是:无组织,无纪律,没法见人。后续会放在github上, 以便收到读者的反馈。经过这次体验,对代码重构有更多的认识, 大神说过,“什么时候需要重构,当你需要的时候。”
后续也把几个不同的版本使用git tag方式发布出来。
关于套路
- 数据展示用
RecyclerView
- 网络请求用
Retrofit
- 该重构时就重构, 等实战多了,能达到开始就写好项目骨架。
更新 2016.08.02
这个系类8篇,涉及到重构主题的是2篇,为了完整的展示IDuban是如何写好的,扩展了几篇。
- RecyclerView的重构之路(五) ==>感谢小彤花园推荐到首页
- RecyclerView的重构之路(七) ==> 开始重构
- RecyclerView的重构之路(八) ==> 终极重构
整个过程代码已上传github。
网友评论