转载请注明 作者:田野光 地址:http://blog.csdn.net/lovefish2/article/details/45242731
SwiperRefreshLayout 是Google官方推出的下拉刷新的控件,最近项目中用到时,遇到了一个问题。首次加载数据时,希望能够显示刷新的动画,也就是 SwiperRefreshLayout 自带的CircleView动画(旧版本sdk为彩虹条),但是默认setRefreshing(true)方法,无法实线初次加载显示动画的效果。我们可以这样处理:
swipeRefreshLayout.setProgressViewOffset(false, 0, (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 24, getResources().getDisplayMetrics()));
swipeRefreshLayout.setRefreshing(true);
不过由于显示的动画只是CircleView原地转圈,不包含下拉过程的动画。数据处理过程时间一般不会很长,所以显示时间较短。我们可以手动的增加动画延时。

本文介绍了在使用Android的SwiperRefreshLayout时如何在首次加载数据时显示刷新动画。默认情况下,setRefreshing(true)无法实现此效果。通过设置动画延时和解决在2.3设备上出现的CircleView显示问题,可以成功实现这一功能。解决方案包括对setProgressViewOffset方法的使用,以及参考StackOverflow和Google Issue的相关讨论。
1750

被折叠的 条评论
为什么被折叠?



