@@ -144,16 +144,6 @@ compile ('com.github.bvin:gesture-refresh-layout:0.1.7') {
144144## 用法
145145通常可以在GestureRefreshLayout布局里面添加子视图来实现刷新功能,第一个应为内容视图,第二个应为刷新视图。
146146
147- 原生SwipeRefreshLayout的ChildView的宽高会强制match_parent,而我们的GestureRefreshLayout可以支持Child
148- View为wrap_content。宽度不足match_parent的RefreshView将会处于水平居中位置,未来可提供gravity和margin
149- 的支持。
150-
151- 至于为何SRL(即SwipeRefreshLayout,以下通称SRL)会这样做,我猜测是因为SRL把触摸事件
152- 从ChildView拦截到SRL自身去做事件处理,它原生是可以从ChildView的区域滑出到SRL自身的区域,Touche事件可
153- 以无缝衔接,虽然...但是SRL和ChildView是没有间隙的,是严丝合缝的。而GRL(即GestureRefreshLayout,以下通
154- 称GRL)的ContentView是可以支持wrap_content的,就算你的ChildView小到比TouchSlop还小,依然可以在
155- ChildView外的GRL区域起作用。
156-
157147
158148``` xml
159149<GestureRefreshLayout >
@@ -192,6 +182,13 @@ public boolean onOptionsItemSelected(MenuItem item) {
192182 mGestureRefreshLayout. setEnabled(false );
193183```
194184
185+ GestureRefreshLayout默认是以RefreshView的高度作为释放刷新的距离(即当下拉出屏幕一个RefreshView的高度
186+ 就会触发刷新动作),如果你的RefreshView的高度小于默认高度或者大于3倍默认高度,将会以默认下拉高度作为
187+ 释放刷新距离,当然也可以完全自定义释放刷新的距离。
188+ ``` java
189+ mGestureRefreshLayout. setDistanceToTriggerSync(120 );
190+ ```
191+
195192####高级用法
196193GestureRefreshLayout的强大之处是可以非常个性化得定制刷新效果。通过GestureChange手势状态改变监听器可以
197194定制任何你想要的效果,OnGestureStateChangeListener接口有下列3个状态回掉。
@@ -236,6 +233,16 @@ _为了保持结构简洁、用法简单,GestureRefreshLayout只提供基础
236233
237234
238235## 实现原理
236+
237+ 原生SwipeRefreshLayout的ChildView的宽高会强制match_parent,而我们的GestureRefreshLayout可以支持Child
238+ View为wrap_content。宽度不足match_parent的RefreshView将会处于水平居中位置,未来可提供gravity和margin
239+ 的支持。
240+
241+ 至于为何SRL(即SwipeRefreshLayout,以下通称SRL)会这样做,我猜测是因为SRL把触摸事件
242+ 从ChildView拦截到SRL自身去做事件处理,它原生是可以从ChildView的区域滑出到SRL自身的区域,Touche事件可
243+ 以无缝衔接,虽然...但是SRL和ChildView是没有间隙的,是严丝合缝的。而GRL(即GestureRefreshLayout,以下通
244+ 称GRL)的ContentView是可以支持wrap_content的,就算你的ChildView小到比TouchSlop还小,依然可以在
245+ ChildView外的GRL区域起作用。
239246
240247 +--------------------+ ------> OriginOffsetTop
241248 | [ Refresh View] |
0 commit comments