从写第一篇今日头条高仿系列开始,到现在已经过去了1个多月了,其实大体都做好了,就是迟迟没有放出来,因为我觉得,做这个东西也是有个过程的,我想把这个模仿中一步一步学习的过程,按照自己的思路写下来,在根据碰到的知识点和问题,并且罗列出这些东西的知识点和使用方法。如果你单纯的把做好的一个DEMO拿去改改用用,那样,你永远不知道里面用到的内容是涉及到什么知识点,用什么方法实现,那样就没有多少提升价值而言了。

近期都是在通过开发文档把以前的一些东西重新过一遍,看好多网友都催促想要新版本的,那我就在这里先把最后完善版本的放出来,看看大家有什么地方可以用的到,学的到的,那样就不枉此篇博文了。

近期也在尝试着使用GITHUB,所以我把这个的源码也传到了GITHUB上,日后的修改应该不会在开一篇特定的博文去说明改了什么,一般也是小改动了,就直接提交到GITHUB上就可以了。如果希望看到里面有什么改进的,可以关注我的GITHUB。

我的GITHUB地址是:https://github.com/Rano1   (谢谢支持)

有的时候,模范别人应用其实就是一种开发的学习手段,因为如果自己去开发,没有UI没有交互流程,那样的话,可能会比较难下手,当有了别人的交互流程和一些资源,你就可以去自己考虑如果实现相关功能,如何达到类似效果。可能你的方法没那么完善,实现效果没原版的那么绚丽,可是这些都带有你的思想,这就足够了。开源的魅力就是,在自己的思想基础上,还能通过大神的编码习惯和实现方法,自己从他们的代码中感悟出自己的东西,并且学以致用。

之前没事的时候模范过布卡漫画,功能UI也大体实现了,可是没有梳理,所以代码方面会比较乱,并且有的系统方法已经被遗弃,所以要跟上时代的步伐,要把代码里面的不足之处重新优化一遍,如果有机会,日后会开相关的博文放出对应的DEMO。

下面把 “今日头条”开发过程中的知识点、开发流程做个总结,并且贴上相关的博文链接,以便更好的查看。

开发流程

第一篇:(android高仿系列)今日头条 --新闻阅读器 (一)

涉及到的知识点有

1.slidingmenu.lib  (侧拉菜单包)   使用方法配置以及下载:点击这里

实现:客户端中左右2边侧拉菜单

2.命名规范可以参考:android命名规范

实现:源码中包、类、方法名称的统一

3.如何反编译:反编译就这么简单

实现:客户端中资源文件的获取

4.Fragment以及HorizontalScrollView的使用,以及重写HorizontalScrollView

实现:客户端中主页头部滑动菜单以及对应内容的展示

第二篇:(android高仿系列)今日头条 --新闻阅读器 (二)

涉及到的知识点有

1.如何自定义布局:android 自定义控件 使用declare-styleable进行配置属性(源码角度)

实现:自定义控件布局(如    重写开关按钮:SwitchButton 开关按钮 的多种实现方式 (附源码DEMO))

2.PopupWindow的使用。

实现:每个列表中更多操作的按钮展示。android 仿 新闻阅读器 菜单弹出效果(附源码DEMO)

3..Android-Universal-Image-Loader  (图片的异步加载包)   使用方法配置以及下载:点击这里

实现:客户端中网络图片异步显示缓存

第三篇:(就是本篇)

涉及到的知识点有

1.自定义控件,重写控件的相关方法

实现:

(1)频道管理(带拖拽,动画)Android 高仿 频道管理----网易、今日头条、腾讯视频 (可以拖动的GridView)附源码DEMO

(2) 新闻列表中每个字段按照时间进行排列,并且带有悬浮效果

(3)城市选择列表中的城市信息按照首字母进行排列,并且带有悬浮效果

注意:(1)通过重写GridView。(2)和(3)通过重写ListView,之后通过接口判断是否在最最上方了,进行状态变更,DEMO的代码中可以清晰看懂

2.SQLITE数据库的使用

实现:保存用户设置的频道信息

3.Activity之间的动画跳转方式

4.Animation动画类的相关知识

实现:频道管理中频道的移动动画

5.WebView的相关知识和 jsoup库解析HTML

实现:新闻详情的查看、排版,图片信息的提取。(这块没深入研究,知识从别人那边借鉴了点放进去的)

6.重写ViewPager和ImageView

实现:图片浏览和通过手势放大缩小

7.GestureDetector手势类及OnGestureListener手势监听类的使用

实现:新闻详情页面根据手势滑动来关闭该页面

最新版本的截图

    

    

    

    

总结

通过了这么一系列的发开过程,我了解了,自己很多方面的知识点不是很扎实,可能是以前的拿来主义造成了这样子的情况,所以,近期目标结合开发文档和系统源码,了解应用层和框架层的各个主要知识点,并且内化,之后深入强化学习,根据学习情况将所学知识点用于实践开发,开发出更多完善的开源应用。可能有很多地方不足,希望提出来,会及时改正。

下载地址

CSDN下载地址:

GITHUB地址:

今日头条新闻阅读器 (三) 完结 、总结 篇相关推荐

  1. (android高仿系列)今日头条 --新闻阅读器 (三) 完结 、总结 篇

    从写第一篇今日头条高仿系列开始,到现在已经过去了1个多月了,其实大体都做好了,就是迟迟没有放出来,因为我觉得,做这个东西也是有个过程的,我想把这个模仿中一步一步学习的过程,按照自己的思路写下来,在根据 ...

  2. (android高仿系列)今日头条 --新闻阅读器 (一)

    在模仿中循序渐进,以程序员角度去看待每一个APP是如何实现的,它有什么优缺点,并从中提升自己. 之前发现很多人在群里面.论坛上求网易新闻客户端的源码,之后我就去下了个网易新闻客户端和今日头条新闻客户端 ...

  3. android高仿今日头条 --新闻阅读器

    摘要: 开发流程 第一篇:(android高仿系列)今日头条 --新闻阅读器 (一) 涉及到的知识点有 1.slidingmenu.lib  (侧拉菜单包)   使用方法配置以及下载:点击这里   实 ...

  4. 今日头条 --新闻阅读器

    高仿今日头条 --- 第一篇:(android高仿系列)今日头条 --新闻阅读器 (一) 上次,已经完成了头部新闻分类栏目的拖动效果. 这篇文章是继续去完善APP 今日头条  这个新闻阅读器的其他功能 ...

  5. (android高仿系列)今日头条 --新闻阅读器 (二)

    高仿今日头条 --- 第一篇:(android高仿系列)今日头条 --新闻阅读器 (一) 上次,已经完成了头部新闻分类栏目的拖动效果. 这篇文章是继续去完善APP 今日头条  这个新闻阅读器的其他功能 ...

  6. 今日头条 --新闻阅读器 (二)

    版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 高仿今日头条 --- 第一篇:(android高仿系列)今日头条 --新闻阅读器 (一) 上次,已经完成了头部新闻分类栏目的拖动 ...

  7. Android 仿 新闻阅读器 菜单弹出效果(附源码DEMO)

    这一系列博文都是:(android高仿系列)今日头条 --新闻阅读器 (一) 开发中碰到问题之后实现的,觉得可能有的开发者用的到或则希望独立成一个小功能DEMO,所以就放出来这么一个DEMO. 原本觉 ...

  8. 一篇今日头条百万阅读量爆文怎么来的,自媒体月收入暴涨10万+

    今日头条百万阅读真的很简单,王听风老师给大家说几点如何打造一篇今日头条百万阅读爆文: 一篇今日头条百万阅读爆文怎么来的,自媒体月收入10万+ 一,文章主体思路打造 你要想清楚你要写的内容有那些,突出那 ...

  9. 如何开发新闻阅读器(新闻软件、今日头条)?让我们一起动手吧!

            过了几天,博主又匿起来开发了一款新闻阅读器,新闻来源是百度APIStore里的免费API接口,开发的灵感和思路来自今日头条.    有的时候,模范别人应用其实就是一种开发的学习手段,因 ...

最新文章

  1. 斯坦福大学 AI100 报告发布:AI 发展速度惊人,但风险也正走进现实
  2. js实现当前导航菜单高亮显示
  3. R语言使用coin包应用于独立性问题的置换检验(permutation tests、响应变量是否独立于组、两个数值变量是独立的吗、两个分类变量是独立的吗)、以及coin包的常用置换检验函数
  4. opencv 凹凸性检测 和 缺陷分析
  5. 如何查看某个端口被哪个进程占用
  6. webstorm前端调用后端接口_一篇前端同学对后端接口的吐槽
  7. MySQL优化:数据量很大,分页查询很慢,有什么优化方案?
  8. python多线程_干货|理解python多线程和多进程
  9. Tag标签的增加和删除功能
  10. Rust: 属性(attribute)的含义及文档大全
  11. Julia: 由0.3 升级到0.4 版本的变化
  12. matlab中uigetfile函数的使用
  13. 【BZOJ4200】【NOI2015】小园丁与老司机(动态规划,网络流)
  14. golang 实现微信授权
  15. 计量模型 | 时间固定效应与时间趋势项
  16. 「完美解决」关于最新Ubuntu22.04.1安装launchpad里面PPA报错:“InRelease not available“,“not found file“等
  17. 怎么保护地球生物多样性
  18. 说说 Bootstrap 表格样式
  19. Vue常用的内置指令的底层细节分析
  20. C中strchr()函数用法

热门文章

  1. php微信支付jsapi,ThinkPHP中实现微信支付(jsapi支付)流程
  2. UVAoJ --401
  3. Matlab:结构体数组
  4. Jupyter_notebook_Jupyter快捷键总结
  5. mpi4py 中的收集操作
  6. 对ndarray的操作:一元函数、二元函数、聚合函数、三元函数
  7. ubuntu 添加、删除用户,修改用户名称,修改主机名
  8. 常用的调用链解决方案
  9. Java动态拼接SQL--02--Jpa
  10. 安徽鼓励仿制药研发 全国首仿有重奖