Android 下拉刷新上拉载入 多种应用场景 超级大放送(上)
转载请标明原文地址:http://blog.csdn.net/yalinfendou/article/details/47707017
关于Android下拉刷新上拉载入,网上的Demo太多太多了,这里不是介绍怎么去实现下拉刷新上拉载入,而是针对下拉刷新上拉载入经常使用的一些应用场景即可了一些总结,包括了下拉刷新上拉载入过程中遇到的一些手势冲突问题的解决方法(仅仅能算是抛砖引玉)。
去年9月的时候。那时自己正在独立做Android项目。
记得刚刚写完那个ListView列表页面(木有下拉刷新,上拉载入),仅仅有一个简单的分页功能,就是当ListView滑动到最底部的时候,会去请求下一页数据,但是没有那个载入很多其它的Footerview。公司的那仅仅产品汪过来看了我实现的效果。说:怎么没有下拉刷新,上拉载入啊,这但是APP的标配啊!
由于那时候真的太菜,刚会Hello world不久,又要急着赶项目。虽说后来也折腾出来了。可是我很清楚的记得那时候是很渴求有人能给我一份完美的Demo啊。
后来接触的东西多了久了。发现事实上下拉刷新。上拉载入很easy,略微复杂一点的就在于某些使用场景,须要解决一些手势冲突问题。所以。希望Demo可以对那些不熟悉下拉刷新,上拉载入的童鞋有一点小小的帮助,大神们就飘过吧!
为什么Demo中没有RecyclerView的下拉刷新上拉载入?
在GIT上也找过一些,自己也尝试写过一些Demo,虽说功能也能实现。但效果并不能让自己惬意,所以这里就不考虑ReclerView啦!
为什么初始化时Item时,没有满屏?
由于眼下市面上的一些APP的下拉刷新上拉载入没有考虑Item不满屏的情况,会有一些异常(或许是由于这样的情况非常少见)。即便是Git上。非常多人都在用的pull-to-refresh,在Item不满屏的情况下,上拉载入很多其它时。Loading的FooterView会紧贴在最后一个Item以下,而不是在屏幕的最底部。个人不太喜欢这样的不友好的交互方式。
由于涉及到的知识点有点杂,非常多知识点是不能去在博客中细细深究的,这里主要介绍的是Android
下拉刷新上拉载入 多种应用场景。
Demo中包括的一些基本的知识点:View和ViewGroup的事件分发机制,DrawerLayout側滑菜单,SwipeListView滑动删除。瀑布流照片墙效果(參考大神郭霖的代码,做了少许修改),图片轮播。PagerSlidingTabStrip,TabLayout,VewPager等的用法在Demo中会有部分体现,网上关于这些方面的知识点的博客太多了,我也是向他人学习的,所以建议先熟悉一下上面的知识点。至少看代码可以明确一些吧。
关于一个下拉刷新上拉载入控件应该注意的地方:
- 使用方便,能适用于多种情况
- 解决一些手势滑动冲突
- 基本ListView下拉刷新上拉载入
- 基本GridView下拉刷新上拉载入
- 基本ScrollView下拉刷新上拉载入。包括Button,TextView。ImageView
- DrawerLayout中ListView下拉刷新上拉载入,解决DrawerLayout側滑与ListView下拉上拉的手势冲突
- SwipeListView的下拉刷新上拉载入。解决滑动删除的Item与ListView下拉上拉的手势冲突
- MultiColumn瀑布流的下拉刷新上拉载入
- ListView+图片轮播的下拉刷新上拉载入,解决轮播图片滑动与ListView下拉上拉的手势冲突
- PagerSlidingTabStrip+ListView+图片轮播的下拉刷新上拉载入。解决ViewPager,轮播图片滑动,ListView下拉上拉的手势冲突
- ……继续加入未完毕
Demo效果图:
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
看完Demo效果图就应该上代码和Demo源代码了,由于近期小忙小忧桑,另一些下拉刷新上拉载入的应用场景没写完,所以代码和Demo会在后面的博客中给出来。
说好的优化后再上传。近期实在太忙,就把曾经的代码放出来了,Sorry……
CSDN下载地址:http://download.csdn.net/detail/yalinfendou/9187925
Android 下拉刷新上拉载入 多种应用场景 超级大放送(上)的更多相关文章
- Android实现RecyclerView的下拉刷新和上拉载入很多其它
需求 先上效果图, Material Design风格的下拉刷新和上拉载入很多其它. 源代码地址(欢迎star) https://github.com/studychen/SeeNewsV2 假设对于 ...
- Android 使用PullToRefresh实现下拉刷新和上拉加载(ExpandableListView)
PullToRefresh是一套实现非常好的下拉刷新库,它支持: 1.ListView 2.ExpandableListView 3.GridView 4.WebView 等多种常用的需要刷新的Vie ...
- 使用SwipeRefreshLayout和RecyclerView实现仿“简书”下拉刷新和上拉载入很多其它
一.概述 本篇博客介绍的是怎样使用SwipeRefreshLayout和RecyclerView实现高仿简书Android端的下拉刷新和上拉载入很多其它的效果. 依据效果图能够发现,本案例实现了例如以 ...
- Android 5.X新特性之为RecyclerView添加下拉刷新和上拉加载及SwipeRefreshLayout实现原理
RecyclerView已经写过两篇文章了,分别是Android 5.X新特性之RecyclerView基本解析及无限复用 和 Android 5.X新特性之为RecyclerView添加Header ...
- 使用PullToRefresh实现下拉刷新和上拉加载
使用PullToRefresh实现下拉刷新和上拉加载 分类: Android2013-12-20 15:51 78158人阅读 评论(91) 收藏 举报 Android下拉刷新上拉加载PullToRe ...
- 安卓开发笔记——关于开源组件PullToRefresh实现下拉刷新和上拉加载(一分钟搞定,超级简单)
前言 以前在实现ListView下拉刷新和上拉加载数据的时候都是去继承原生的ListView重写它的一些方法,实现起来非常繁杂,需要我们自己去给ListView定制下拉刷新和上拉加载的布局文件,然后添 ...
- 实现RecyclerView下拉刷新和上拉加载更多以及RecyclerView线性、网格、瀑布流效果演示
实现RecyclerView下拉刷新和上拉加载更多以及RecyclerView线性.网格.瀑布流效果演示 效果预览 实例APP 小米应用商店 使用方法 build.gradle文件 dependenc ...
- Diycode开源项目 搭建可以具有下拉刷新和上拉加载的Fragment
1.效果预览 1.1.这个首页就是一个Fragment碎片,本文讲述的就是这个碎片的搭建方式. 下拉会有一个旋转的刷新圈,上拉会刷新数据. 1.2.整体结构 首先底层的是BaseFragment 然后 ...
- 手把手教你实现RecyclerView的下拉刷新和上拉加载更多
手把手教你实现RecyclerView的下拉刷新和上拉加载更多 版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接和本声明. 本文链接:https:// ...
随机推荐
- Volley缓存说明——一个请求两次回调
从上一篇文章Android 异步网络请求框架-Volley了解volley的一些出来过程,当然也包含网络请求和缓存处理的流程,但是在此需要单独做一些说明. 我在使用过程中忽略了一个事情,就是一个网络请 ...
- hdu5884 Sort
//--------------------------------------------------------------- /*---贪心策略+二分+队列 -----将原数组排序,然后每次取k ...
- Java高级特性—锁
1).synchronized 加同步格式: synchronized( 需要一个任意的对象(锁) ){ 代码块中放操作共享数据的代码. } synchronized的缺陷 synchronized是 ...
- 理解支持向量机(四)LibSVM工具包的使用
LibSVM是一款简单易用的支持向量机工具包.包括了C和Java的开发源代码.大家能够訪问其官网进行了解和下载相关文件. 这里以其官网的第一个数据集a1a 为例.练习使用多项式核和径向基核来对数据集进 ...
- 静态代码检查工具-PMD刚開始学习的人入门篇
前言: PMD是一款静态代码分析工具.它能够自己主动检測各种潜在缺陷以及不安全或未优化的代码. PMD很多其它地是集中在预先检測缺陷上.它提供了高度可配置的丰富规则集,用户能够方便配置对待特定项目使用 ...
- Intellij idea远程debug连接tomcat,实现单步调试
转载:http://blog.csdn.net/boling_cavalry/article/details/73384036 web项目部署到tomcat上之后,有时需要打断点单步调试,如果用的是I ...
- 【Android工具类】怎样保证Android与server的DES加密保持一致
转载请注明出处:http://blog.csdn.net/zhaokaiqiang1992 在我们的应用程序涉及到比較敏感的数据的时候,我们一般会对数据进行简单的加密.在与server之间的数据交互中 ...
- Java 实现模板方法(TemplateMethod)模式
类图 /** * 业务流程模板.提供基本框架 * @author stone * */ public abstract class BaseTemplate { public abstract voi ...
- iPhone手机解锁效果&&自定义滚动条&&拖拽--Clone&&窗口拖拽(改变大小/最小化/最大化/还原/关闭)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- VB程序无法运行,Component ‘MCI32.OCX’错误怎么办
1 提示Component 'MCI32.OCX'错误 2 搜索你电脑的MCI32.OCX这个文件 3 把它复制到任意位置,然后再同一个目录下新建一个文本文档,输入regsvr32 MCI32 ...