(android高仿系列)今日头条 --新闻阅读器 (三) 完结 、总结 篇
从写第一篇今日头条高仿系列开始,到现在已经过去了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地址:
版权声明:本文为博主原创文章,未经博主允许不得转载。
(android高仿系列)今日头条 --新闻阅读器 (三) 完结 、总结 篇的更多相关文章
- (android高仿系列)今日头条 --新闻阅读器 (二)
高仿今日头条 --- 第一篇:(android高仿系列)今日头条 --新闻阅读器 (一) 上次,已经完毕了头部新闻分类栏目的拖动效果. 这篇文章是继续去完好APP 今日头条 这个新闻阅读器的其 ...
- (android高仿系列)今日头条 --新闻阅读器 (转载)
非常不错,原文地址:http://blog.csdn.net/vipzjyno1/article/details/26514543
- Android 高仿 频道管理----网易、今日头条、腾讯视频 (可以拖动的GridView)附源码DEMO
距离上次发布(android高仿系列)今日头条 --新闻阅读器 (二) 相关的内容已经半个月了,最近利用空闲时间,把今日头条客户端完善了下.完善的功能一个一个全部实现后,就放整个源码.开发的进度就是按 ...
- Android 高仿 频道管理----网易、今日头条、腾讯视频 (能够拖动的GridView)附源代码DEMO
距离上次公布(android高仿系列)今日头条 --新闻阅读器 (二) 相关的内容已经半个月了.近期利用空暇时间,把今日头条client完好了下.完好的功能一个一个所有实现后.就放整个源代码.开发的进 ...
- Android 仿 新闻阅读器 菜单弹出效果(附源码DEMO)
这一系列博文都是:(android高仿系列)今日头条 --新闻阅读器 (一) 开发中碰到问题之后实现的,觉得可能有的开发者用的到或则希望独立成一个小功能DEMO,所以就放出来这么一个DEMO. 原本觉 ...
- [Android] Android 手机下 仿 今日头条 新闻客户端
利用一个月的时间,自学了 Android 开发 ,为了检验学习成果,特意 开发了这个 仿 今日头条 新闻客户端 AppNews 包括图文新闻+视频新闻+图片新闻 预览演示如下: 功能说明: 1)底部 ...
- android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码
Android精选源码 android模仿支付宝app"记账本"模块源码 android一个超轻量级剪贴板历史记录管理软件源码 android模仿QQ拖动红点消失动画效果源码 展示 ...
- android高仿抖音、点餐界面、天气项目、自定义view指示、爬取美女图片等源码
Android精选源码 一个爬取美女图片的app Android高仿抖音 android一个可以上拉下滑的Ui效果 android用shape方式实现样式源码 一款Android上的新浪微博第三方轻量 ...
- jQuery Mobile发展新闻阅读器,适应iphone和android打电话
程序猿是很不赖,你知道. 我们经常新浪,腾讯.雅虎等各大网站看到上述新闻.他们还推出了自己的移动新闻阅读器.今天,我自己用的jQuery Mobile 为了实现这一功能,.图像大小上传限制的大小250 ...
随机推荐
- ubuntu15.04更新软件源
1,首先备份原来的源 sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup2,编辑软件源的文件 sudo vim /etc/apt/so ...
- 数据结构C语言版 有向图的十字链表存储表示和实现
/*1wangxiaobo@163.com 数据结构C语言版 有向图的十字链表存储表示和实现 P165 编译环境:Dev-C++ 4.9.9.2 */ #include <stdio.h> ...
- Windows Phone 8初学者开发—第19部分:设置RecordAudio.xaml页面
原文 Windows Phone 8初学者开发—第19部分:设置RecordAudio.xaml页面 原文地址: http://channel9.msdn.com/Series/Windows-Ph ...
- 使用Maven打包项目并上传到Linux服务器
Maven打包: 项目右键Run as-->Maven build...--> 出来下面的界面,注意红色部分的填写,Goals填写package表示打包,下面的Skip Tests表示打 ...
- Python文本处理(1)
每次处理一个字符 解决方法: 创建列表 thestring='abcdefg' thelist=list(thestring) print thelist 结果 ['a', 'b', 'c', 'd' ...
- Thinkphp里import的几个使用方法介绍
以下附上import的几个使用方法介绍 1.使用方法一 import('@.Test.Translate'); @,表示项目根文件夹.假定根文件夹是:App/ 导入类库的路径是:App/Lib/Tes ...
- 解决打包时IsCmdBld.exe出错的问题
1.查看环境变量是否配置了 2.查看是否是使用administrator登陆的,要求使用administrator登陆否则可能会出现权限不足的现象
- 04-UIKit(UINavigationController、NSAttributeString、UIImageView)
目录: 一.UINavigationController导航视图控制器 二.NSAttributeString属性字符串 三.UIImageView图像处理 回到顶部 一.UINavigationCo ...
- NET Core 以及与 .NET Framework
简析.NET Core 以及与 .NET Framework的关系 简析.NET Core 以及与 .NET Framework的关系 一 .NET 的 Framework 们 二 .NET Core ...
- 在win8.1上用Bitvise SSH Server 6.24(原名winsshd)搭建SSH2服务器
注意:此SSH是指运维领域的 SSH,不是指JavaWeb框架中的SSH. 运维领域:SSH=Secure Shell安全外壳协议 JavaWeb框架:SSH=Spring+Struts+Hibern ...