Android高仿雅虎天气(两)---代码结构分析

版本已经升级到1.0.1

源码地址:

GitHub:https://github.com/way1989/WayHoo

OsChina:http://git.oschina.net/way/WayHoo

本例使用了6个库代码和1个主工程代码。

一、6个库代码如下图所示:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvd2F5X3BpbmdfbGk=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" />

其中

①.MenuDrawer、ViewPagerIndicator、ShowcaseView、SwipeBack都是Github上有名的侧边栏菜单开源库,我这里未做修改,直接引用,感谢开源的力量。

②.PullToRefresh也是Github上有名的下拉刷新开源库,我做了一些小修改,主要是将雅虎下拉刷新的效果添加到其中。

如下图所示:

③.weather-lib就是我之前和大家分享的小米天气源,只是加入了本地缓存,也不作多介绍,请参考:http://blog.csdn.net/way_ping_li/article/details/29669045

二、主代码结构如下图所示:

其中:

com.way.adapter:所有适配器,包括ListView和ViewPager之类。

com.way.beans:所有Java Bean存放的地方。

com.way.common.util:所有工具类存放地方。比如网络判断、系统工具、时间工具等等。

com.way.db:即本工程使用的数据库管理类,就一个文件CityProvider.java,本人比较喜欢使用ContentProvider,确实感觉比直接操作数据库来得方便。而且可以同时处理一个数据库的多个表。只是uri不同,switch case时多判断一下即可。

com.way.fragment:本工程使用到的Fragment,只有一个文件。

com.way.ui.view:所有自定义View。其中值得一提的是TouchDispatchView,顾名思义是分配touch事件的View,由于本代码使用的是scrollview作为下拉刷新,ListView用来显示数据。所以两个View都需要touch事件,就需要一个父容器来分配他们的touch事件。

com.way.yahoo:所有activity所在包。

好了。今天就到此结束,下次和大家详细分析以下3个方面:

①.主界面上滑变模糊,背景跟随滑动。

②.ListView和GridView中遇到多类型item的处理。

③.ViewPager使用fragment的缓存与优化。

谢谢!

时间: 2024-10-13 15:21:43

Android高仿雅虎天气(两)---代码结构分析的相关文章

Android之高仿雅虎天气(二)---代码结构解析

版本已升级至1.0.1 源码地址: GitHub:https://github.com/way1989/WayHoo OsChina:http://git.oschina.net/way/WayHoo 本例使用了6个库代码和1个主工程代码. 一.6个库代码如下图所示: 其中 ①.MenuDrawer.ViewPagerIndicator.ShowcaseView.SwipeBack都是Github上有名的侧边栏菜单开源库,我这里未做修改,直接引用,感谢开源的力量. ②.PullToRefresh

Android之高仿雅虎天气(一)

引言: 记得去年下半年有上传一份代码(超逼真仿雅虎天气界面):http://download.csdn.net/detail/weidi1989/6312271 但那仅仅只是一个界面,而且还有一些比较严重的bug,记得其中有一个是:那个可以换位置的ListView无法缓存item,导致上下滚动时相当卡,性能可想而知了.以至于我就放弃继续开发,今年这段时间忙里偷闲,刚好有网友说要我继续把功能做完,那个换位置的ListView可以去掉,于是乎拿出来又折腾了一下,虽然还是没有解决这个问题(已经干掉此功

Android 高仿 QQ5.0 侧滑菜单效果 自定义控件来袭【学习鸿洋_视频博客笔记总结】

学习鸿洋博客:http://blog.csdn.net/lmj623565791/article/details/39257409 学习鸿洋视频:慕课网视频 看看Android 高仿 QQ5.0 侧滑菜单效果 自定义控件实现效果: 技术上,继承HorizontalScrollView 加上自定义ViewGroup来实现: 1.onMeasure:决定内部View(子View)的宽和高,以及自己的宽和高 2.onLayout:决定子View的放置位置 3.onTouchEvent[监听动作] 自定

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

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

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

距离上次发布(android高仿系列)今日头条 --新闻阅读器 (二) 相关的内容已经半个月了,最近利用空闲时间,把今日头条客户端完善了下.完善的功能一个一个全部实现后,就放整个源码.开发的进度就是按照一个一个功能的思路走的,所以开发一个小的功能,如果有用,就写一个专门的博客以便有人用到独立的功能可以方便使用. 这次实现的功能是很多新闻阅读器(网易,今日头条,360新闻等)以及腾讯视频等里面都会出现的频道管理功能. 下面先上这次实现功能的效果图:(注:这个效果图没有拖拽的时候移动动画,DEMO里

Android高仿QQ消息滑动删除(附源码)

大家都应该使用过QQ吧,他的消息中可以滑动删除功能,我觉得比较有意思,所以模仿写了一个,并且修改了其滑动算法.我先贴几个简单示范图吧 其实主要用的是算法以及对ListView的把控. 一下是适配器的类 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52

java swing高仿酷我音乐界面代码例子下载

原文:java swing高仿酷我音乐界面代码例子下载 代码下载地址:http://www.zuidaima.com/share/1550463245044736.htm 高仿酷我音乐界面尽情欣赏 java swing高仿酷我音乐界面代码例子下载,布布扣,bubuko.com

高仿墨迹天气黄历

本项目是高仿墨迹天气的黄历功能模块,可插件化安装

Android 高仿微信实时聊天 基于百度云推送

转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38799363 ,本文出自:[张鸿洋的博客] 一直在仿微信界面,今天终于有幸利用百度云推送仿一仿微信聊天了~~~ 首先特别感谢:weidi1989分享的Android之基于百度云推送IM ,大家可以直接下载:省了很多事哈,本例中也使用了weidi的部分代码,凡是@author way的就是weidi1989的代码~~ 1.效果图 核心功能也就上面的两张图了~~~我拿着手机和模拟器