zoukankan      html  css  js  c++  java
  • [EGORefreshTableHeaderView]手动启动下拉更新的方法

    原文地址:http://blog.csdn.net/ugg/article/details/7283661

    Q:在EGORefreshTable中手动启动下拉更新的方法?

    A:EGORefreshTable中提供了方法,让用户下拉table到一定位置实现下拉更新的效果,现在我想复用这种效果用于table更新,比如我做一个按钮,当用户点击这个按钮时,执行这种数据加载中的效果,或者app刚刚启动时,也可以执行这个操作。详细参考代码:

    -(void) ViewFrashData{  
        [tblView setContentOffset:CGPointMake(0, -75) animated:YES];  
        [self performSelector:@selector(doneManualRefresh) withObject:nil afterDelay:0.4];  
    }  
    -(void)doneManualRefresh{  
        [_refreshHeaderView egoRefreshScrollViewDidScroll:tblView];  
        [_refreshHeaderView egoRefreshScrollViewDidEndDragging:tblView];  
    } 

    1:viewFrashData方法是手动调用执行的方法。

    2:[tblView setContentOffset:CGPointMake(0, -75) animated:YES],以动画形式展现下拉table,设置75的原因是,EGORefreshTable需要下拉65个像素才能触发更新操作,设置75这样还可以有种动态回弹的效果,你可以根据自己的需求再调整。

    3:[self performSelector:@selector(doneManualRefresh) withObject:nil afterDelay:0.4];调用延迟方法的原因是,scrollview的动画效果需要一定时间,在动画还未完成时,调用egoRefreshScrollViewDidScroll方法时,是不会触发下拉更新操作的。

    4:doneManualRefresh 调用 egoRefresh的didscroll和endDragging方法,模拟下拉操作。

    5:tblView为UITableView对象

    误区:

    一开始碰到的误区是,对scrollView的方法不太熟悉,直接调用的 [tblView setContentOffset:CGPointMake(0, -75)]方法,然后做下拉动画,由于对CATransition动画不熟悉,倒腾了半天没做成下拉的动画效果(有谁知道这种效果也麻烦告诉下)。

  • 相关阅读:
    Git 最全命令使用
    git 配置(实用)
    用Redis进行实时数据排名
    最长上升子序列
    KMP算法
    计算星期几【基姆拉尔森公式】
    集合划分(贝尔数)
    合数分解(质因数分解)
    乘法逆元
    扩展欧几里得算法
  • 原文地址:https://www.cnblogs.com/appwgh/p/2517481.html
Copyright © 2011-2022 走看看