IXListView的自我分析一
XListView是一个很不错的用来刷新和加载的控件,下拉刷新和上拉加载。目前这个控件已经没有更新,这个不重要,重要的是它确实还不错,之后可能一直有人在用。
android没有提供原生的这类控件,需要我们自己改造实现它。listview是一个列表控件,可以上下拖动,但是到了第一个和最后一个就拖不动了,到极限了,不过仔细观察,有些可能看到一点泛着蓝光?的点汇聚,说明还可以拉,至于拉出来是说明那需要用户自定义。抱着这种思维,listview提供了addHeaderView和addFooterView者两个方法,这个是在listview层面上得方法,有时候可以和adapter上面getview的方法互相比较,不同情况下选用。在这里做刷新和加载我们就选用这种方法了。加载上面控件,当然是刷新和加载需要显示给用户的控件了。X的作者用了一个LinearLayout嵌上一个relative,然后在relative加了个属性tools:ignore="uselessParent"
(这个可以忽略编译器的提示)。两个控件的布局很简单,一个箭头图片加上两个textview文字控件,考虑刷新需要的三种状态,下拉刷新、释放刷新、正在刷新,当用户去拖动listview的时候,当拖动header头部控件离开屏幕最顶端的距离到等于了header控件的自身高度的时候,那么这个状态可以说是下拉刷新状态;当用户还在往下拖动header控件的时候,其高度已经超过了自身高度的时候,直到用户在离屏幕顶端高度还是超过自身高度的时候松手,这个状态都可以说是释放刷新状态;从释放刷新状态松手,那么就可以转化为正在刷新状态;一旦刷新完成,调用了网络接口完成自身数据更新,那么就可以把正在刷新的状态设置为隐藏状态,即把这个控件隐藏掉,变成用户最开始没有去拉listview看不到的时候的样子。(待续)
IXListView的自我分析一的更多相关文章
- SWOT自我分析
个人信息: 大三学生 二本大学 软件工程专业 一:SWOT自我分析 Strenghs(优势): 1.有着良好的作息习惯,坚持锻炼 2.专注力强,能沉下心来学习 3.有着强烈的危机意思,明白不仅则退的道 ...
- 自我分析-Spring IOC
Spring IOC容器实现原理大致是容器(Map)+反射(Java反射和cglib).Spring提供丰富的ApplicationContext.以FileSystemXmlApplicationC ...
- Java中获取路径的方法_自我分析
就目前的我来说最常用的两种获取路径的方法是 class.getRecource(filename) 和 class.getclassloader.getRecource(filename) 这两者的 ...
- JD m站自我解析理解
第一步:从首页着手 文档部分:应用的是H5默认文档开头 即:<!DOCUMENT html> head部分:放了一些相关的JS,title描述,然后就是meta表述了.比较有参考的如下 & ...
- 一个IT人的成长路
毕业四年多了,来深圳三年多了,经历了刚毕业的懵懂少年,成长为现在的成熟稳重青年.职场上,从刚毕业的小白,成长为现在可以成熟应对各种事情的老司机.经历过从初级研发工程师,到中级研发工程师,到高级研发工程 ...
- 批判性思维——Asking The Right Questions
我们生活在一个纷繁复杂的数字世界中,每天都在信息海洋中遨游.如果不想被其淹没,继而成为别人思想的傀儡,就有必要对你接受的信息进行批判.筛选,自己决定该相信什么不该相信什么,进而形成自己的观点,而不是一 ...
- ASP.NET MVC Html.Partial/Html.RenderPartial/Html.Action/Html.RenderAction区别
1. @Html.Raw() 方法输出带有html标签的字符串: <div style="margin:10px 0px 0px;border:1px;border-color:red ...
- MMO之禅(三)职业能力
MMO之禅(三)职业能力 --技术九层阶梯 Zephyr 201304 有了精神,我们还需要实际的行动. 到底需要什么能力?自我分析,窃以为为有九层,无所谓高低,因为每一层都需要不断地砥砺,编程,本身 ...
- The Zen Programmer (zhuan)
http://blog.csdn.NET/marksinoberg/article/details/52460725 ***************************************** ...
随机推荐
- IE浏览器Ajax缓存问题小结
IE浏览器Ajax缓存问题 在IE下使用ajax的get方法向后台请求数据时,如果请求URL与之前完全一样,则根本不想后台获取,直接返回上一次请求缓存的数据(在缓存过期之前,针对相同地址发起的多个Aj ...
- CentOS升级Python的方法
centOS内核版本为:3.10.101-1.el6.elrepo.x86_64 1,下载Python安装包 wget http://www.python.org/ftp/python/2.7.6/P ...
- Uninstall Tool 3.3.2.5315 简体中文注册版(彻底卸载软件)
Uninstall Tool Uninstall Tool是CrystalIdea Software出品的一款强大而灵活的Windows标准“添加/删除程序”工具的替代软件.它能快速,安全而方便的删除 ...
- Delta-wave
Delta-wave Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total ...
- AppScan修复漏洞:启用不安全的HTTP方法
最近对于系统使用Appscan扫描出中危漏洞“启用不安全的HTTP方法,找了很多修复方法都不能达到效果. 漏洞截图: 漏洞描述: 危险级别 中危险 影响页面 整个WEB页面. 简短描述 管 ...
- Ubuntu安装secureCRT
在使用secureCRT前确保主机的ssh服务是启动状态. 一.下载secureCRT包 site: https://www.vandyke.com/download/securecrt/downl ...
- SRM 358(1-250,500pt)
DIV1 250pt 题意:电视目前停留在第100台,有一个遥控器,可以向上或向下换台(需要按键一次),也可以按一些数字,然后直接跳到该台(需要按键次数等于数字数,不需要按确定键).但是,这个遥控一些 ...
- The File's Owner
The File Owner is an instantiated, runtime object that owns the contents of your nib and its outlets ...
- hdoj 2036 改革春风吹满地
改革春风吹满地 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Sub ...
- 341. Flatten Nested List Iterator
List里可以有int或者List,然后里面的List里面可以再有List. 用Stack来做比较直观 Iterator无非是next()或者hasNext()这2个方程 一开始我想的是hasNext ...