• UITableViewController集成---下拉刷新功能


    iOS 6 之后,UITableViewController添加了一个refreshControl属性,这个属性保持了一个UIRefreshControl的对象指针。

    UIRefreshControl类就是iOS 6 为表示图实现下拉刷新而提供的,UIRefreshControl类目前只能应用于表视图画面。

    - (void)viewDidLoad

    {

      ....

      //  查询请求数据

      action = ACTION_QUERY;

      [self startRequest];

      // 初始化UIRefreshControl

      UIRefreshControl *rc = [[UIRefreshControl  alloc] init ];

      rc.attributedTitle = [[NSAttributedString alloc] initWithString:@"下拉刷新..."] ; 

      [rc addTarget:self  action:@selector(refreshTableView)

                forControlEvents:UIControlEventValueChanged ];

      self.refreshControl = rc ;

    }

    - (void)refreshTableView

    {

      if (self.refreshControl.refreshing)                                                                                                    【1】

      {

        self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"加载中...."];

        // 查询请求

        action = ACTION_QUERY;

        [self startRequest]; // 异步请求完后,调用reloadView方法

      }

    }

    // 异步请求完成后,在请求成功代理方法中调用该方法

    - (void)reloadView:(NSDictionary *)resDict

    {

      [self.refreshControl endRefreshing];                                                                                             【2】

      self.refreshControl.attributedTitle = [[NSAttributedString alloc] initWithString:@"下拉刷新..."] ;

      ........

    }

    【1】:refreshing属性可以判断控件是否还处于刷新中的状态

    【2】:endRefreshing方法停止刷新 

  • 相关阅读:
    Hive 导入、导出数据
    mysql 命令行参数说明
    mysql 查看表信息
    python之冒泡排序
    python之选择排序
    python之快速排序
    光荣之路测试开发面试linux考题之四:性能命令
    测试开发linux面试之三:后台进程之操作
    测试开发面试的Linux面试题总结之二:常用命令
    测试开发面试的Linux面试题总结之一:vim使用方法
  • 原文地址:https://www.cnblogs.com/yaoxc/p/3719064.html
Copyright © 2020-2023  润新知