一款Gank客户端,阅读本工程代码您将学习到:
- RxJava + Retrofit + Glide的使用
- DiskLruCache的封装
- 常见Material-Design效果的设计
- 如何设计插件化主题包
- 如何使用装饰模式对RecyclerView进行扩展
- 如何编写复用性强的RecyclerView的Adapter,使得每个Item即是独立的Bean又是可复用的Item
- Arouter的路由框架的使用
- 搭建Android5.0水波动画框架
- 如何使用ViewPager打造出超炫浏览界面
- 如何使用贝塞尔曲线打造Loading界面
- 如何使用ViewPager打造出超炫的图片选择界面
RxJava + Retrofit + Glide + DiskLruCache + Material-Design
本着学习MD军火库的目的, 外加练习一下使用第三方框架, 毕竟在公司很少使用第三方的框架. 于是写了个Gank.io客户端. 本打算写一个笑话大全类的客户端, 想着代码家大神比那些第三方网站靠谱的多. 其实都一样. 不如写Gank.io了
https://github.com/Jerey-Jobs/KeepGank
- 主页为Gank分类
- 每日Gank
- 我的博客)
- Disk数据缓存,避免下次打开时无网络, 加载老数据
- 图片大图浏览效果
- 图片保存
- 瀑布流妹子浏览
- 内容分享
- 夜间模式
- 增加揭面水波动画
- 增加多主题框架,并内置了两个主题包
- 增加字体选择,应用内支持微软雅黑
- 启动模式不再白屏
- 主题切换不再有过渡动画
- 增加头像选择功能, 滑动浏览
- 全新的豆瓣电影模块
- 全新的大图浏览模块,仿微信下拉背景色变透明并返回的效果
- 全新的关于app模块,提供了更多关于app的介绍
- 全新的搜索模块,支持了豆瓣电影搜索,Gank搜索
- 优化Adapter编写,将每个单独功能的View都抽象成单独可复用的组件
- 全新首次进入欢迎动画,打造了自定义的动画框架。
Gson | Google json解析库 |
---|---|
Swipebacklayout | 滑动返回库 |
Butterknife | jakewharton的注解绑定库 |
Glide | 图片加载框架 |
RxJava | 一个对于构成使用的Java虚拟机观察序列异步和基于事件的程序库 |
Rxbus | 事件总线 |
Rxlifecycle | RxJava生命周期绑定库 |
Retrofit2 | 网络请求库 |
joda-time | 时间管理库 |
Realm-android | Realm数据库 |
Umeng.analytics | 友盟统计 |
Arouter | 阿里巴巴开源路由框架 |
MaterialDateTimePicker | 一个Material-Design风格的TimePicker |
作者:Anderson大码渣,欢迎关注我的简书: Anderson大码渣
欢迎关注我的Github: Jerey-Jobs
Copyright 2017 Jerey-Jobs.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.