Android应用中怎么实现一个下拉刷新功能-创新互联

Android应用中怎么实现一个下拉刷新功能?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

成都网站建设、网站建设,成都做网站公司-成都创新互联已向数千家企业提供了,网站设计,网站制作,网络营销等服务!设计与技术结合,多年网站推广经验,合理的价格为您打造企业品质网站。

一、下拉才出现的视图

pull_to_refresh_header.xml



 
  
   
   
  
  
  
 
 

ic_loading_refresh.xml


1、ProgressBar的indeterminate属性,代表进程的时间是否不确定。

2、黄色底的是Android Studio的提示。第一个提示的是,当LinearLayout中的Text拓展得足够长时,会与ImageView重叠,实际效果是把ImageView给覆盖了。第二个是,建议用toStartOf代替toLeftOf,用marginEnd代替marginRight等。原因和影响还没完全搞懂。

二、图标旋转的动画

private ImageView mPull_to_refresh_image;
private RotateAnimation mFlipAnimation;

...

  mFlipAnimation = new RotateAnimation(0, -180, RotateAnimation.RELATIVE_TO_SELF, 0.5f,
    RotateAnimation.RELATIVE_TO_SELF, 0.5f);
  mFlipAnimation.setInterpolator(new LinearInterpolator());
  mFlipAnimation.setDuration(250);
  mFlipAnimation.setFillAfter(true);

...
mPull_to_refresh_image.startAnimation(mFlipAnimation);

1、构造方法:

public RotateAnimation(float fromDegrees, float toDegrees, int pivotXType, float pivotXValue,
   int pivotYType, float pivotYValue)

(1)toDegrees - fromDegrees < 0 就会是逆时针旋转,反之是顺时针。这是我取不同值测试出来的。水平线右边是0°,或者360°,左边是180°,或者是-180°。

(2)pivotType是枢轴类型,也就是旋转中心。RELATIVE_TO_SELF代表相对这个view本身。0.5f代表这个view一半大小的位置。

2、setInterpolator作用是设置速度器。LinearInterpolator是匀速加速器,也就是匀速播放动画。

3、setDuration作用是设置动画时长,以毫秒为单位。

4、setFillAfter作用是,当参数为true时,动画播放完后,view会维持在最终的状态。而默认值是false,也就是动画播放完后,view会恢复原来的状态。

关于Android应用中怎么实现一个下拉刷新功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。


文章标题:Android应用中怎么实现一个下拉刷新功能-创新互联
标题来源:http://ybzwz.com/article/djssog.html