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 ***************************************** ...
随机推荐
- bzoj1878
像我这种蒟蒻这道题从在线算法思考基本毫无思路 但是发现题目中只涉及到询问而不涉及到修改,这类题目一般都是离线算法大概 考虑到这题为什么不能直接区间求值,因为区间中同色点会被重复计算(废话) 下面我们就 ...
- java 全角半角转换函数
/** * 半角转全角 * @param input String. * @return 全角字符串. */ public static String ToSBC(String input) { ch ...
- Unity3D之Character Controller(CC)与GameObject的碰撞方法
先来一部分网上常见的内容(略整理): --------------------分隔线---------------------- Unity3d中参与碰撞的物体分2种类型: 一.发起碰撞的物体. 二. ...
- SharePoint 2010顶部链接导航栏的详细操作
转:http://www.360sps.com/Item/UseTopLink.aspx 在SharePoint 2010环境的页面中,导航链接总体上可以分为两类,一类是显示在左侧的快速启动栏,另一类 ...
- Android 解决安装Egit时Egit Mylyn和org.eclipse.team.core报错
为了让Aptana支持GitHub,需要安装Egit,但在的时候碰到两个错误,一个是关于缺少EGit Mylyn另一个是缺少org.eclipse.egit.import.feature.group. ...
- hibernate数据库方言
hibernate数据库方言 mark一下 RDBMS 方言 DB2 org.hibernate.dialect.DB2Dialect DB2 AS/400 org.hibernate.dialect ...
- (转载)TRS内容管理平台用户注册逻辑漏洞
首先 site:gov.cn inurl:WCM TRS 的内容管理系统是国内政府网站使用最多的系统之一 如上面所说:外交部 http://wcm.fmprc.gov.cn/wcm/ 网址加上:wcm ...
- ThinkPHP 快速入门
1. 框架简介 框架是程序结构代码的集合,而不是业务逻辑代码.集合中包含了很多类.函数和功能类包.这个集合是按照一定标准组成的功能体系.体系有很多设计模式,比如MVC等. 2. ThinkPHP框架学 ...
- 1115 HTML CSS
1. HTML 全称HyperText Markup Language (超文本标记语言). 2. 网页=HTML文件 + Web服务器 + CSS文本. 3. Web服务器:处理浏览器请求,寻找资源 ...
- C#.net 创建XML
方法一:按照XML的结构一步一步的构建XML文档. 通过.Net FrameWork SDK中的命名空间"System.Xml"中封装的各种类来实现的 方法二:直接定影XML ...