[发明专利]一种Android端基于FrameLayout实现下拉刷新组件的方法在审
申请号: | 202111570266.6 | 申请日: | 2021-12-21 |
公开(公告)号: | CN114237669A | 公开(公告)日: | 2022-03-25 |
发明(设计)人: | 马硕;陈翔;赵爽;黄凯 | 申请(专利权)人: | 天津健康医疗大数据有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/61 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 阚恭勇 |
地址: | 301700 天津市武清区*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 android 基于 framelayout 实现 下拉 刷新 组件 方法 | ||
1.一种Android端基于FrameLayout实现下拉刷新组件的方法,其特征在于,
使用InspurRefreshLayout类继承FrameLayout来作为基类,在这个类里面维护手势监听器InspurGestureDetector、滚动器AutoScroller、刷新事件监听器InspurRefreshListener和顶部刷新视图InspurOverView的实例,其中手势监听器和滚动器在init方法中就初始化,刷新事件监听器和顶部刷新视图需要外部调用方进行传入,并通过下拉状态的控制选择时机对顶部刷新视图进行控制。
2.根据权利要求1所述的方法,其特征在于,
定义InspurOverView抽象类继承FrameLayout,在这个类中首先定义枚举类型RefreshState,内部包含:
初始态:STATE_INIT
Header展示的状态:STATE_VISIBLE
超出可刷新距离的状态:STATE_OVER
刷新中的状态:STATE_REFRESH
超出刷新位置松开手后的状态:STATE_OVER_RELEASE。
3.根据权利要求2所述的方法,其特征在于,
在InspurRefreshLayout类中根据这些状态来判断滑动操作进行到哪一步了并且在手势监听器InspurGestureDetector监听滑动,下拉刷新组件的初始状态是初始态,如果滑动的距离超出设定的最小距离,组件状态就变成可展示状态,继续往下滑如果超出可刷新距离,状态就变为可刷新状态,在这个状态一旦松手,状态就变为超出刷新位置松开手后的状态,列表恢复到header高度,恢复完毕之后,组件就变为刷新中的状态,在这个时候InspurRefreshLayout会调用refresh()方法,自动执行OverView和mRefreshListner的onRefresh()方法,保证刷新组件调用相关接口,在执行完接口相关逻辑之后回调InspurRefreshLayout的onRefreshFinished()方法来恢复初始态,完成这一次的刷新操作。
4.根据权利要求1所述的方法,其特征在于,
首先InspurRefreshLayout存在setEmptyView()方法,将统一定制的view传入到组件中,组件中存在mEmptyView变量记录这个View;
然后InspurRefreshLayout在初始化过程中,会对包裹的列表View进行判断。判断当前是哪一种类型,根据类型不同进行不同的兼容处理。
5.根据权利要求4所述的方法,其特征在于,
ScrollView:获取scrollView里面子View数量,如果是单节点,就使用递归方法进行遍历,找出最低层级的子View数量,如果子View数量为0,说明ScrollView加载的列表为空,然后将保存的mEmptyView通过设置addView()方法将空白定制View设置到最低层级的View中,以此显示空白View。
6.根据权利要求4所述的方法,其特征在于,
NestedScrollView:获取NestedScrollView里面子View数量,如果是单节点,就使用递归方法进行遍历,找出最低层级的子View数量,如果子View数量为0,然后调用该类的isNestedScrollingEnabled()方法,如果同时这个方法为false说明ScrollView加载的列表为空,然后将保存的mEmptyView通过设置addView()方法将空白定制View设置到最低层级的View中,并将NestedScrollView的子元素直接将宽高设置为-1,表明撑满整个屏幕,以此显示空白View。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津健康医疗大数据有限公司,未经天津健康医疗大数据有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111570266.6/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种键合结构及键合方法
- 下一篇:一种溴氧化铋光催化剂填料及其制备方法与应用