您现在的位置是:首页 > 文章详情

iOS开发-UIRefreshControl下拉刷新

日期:2017-05-30点击:423

下拉刷新一直都是第三库的天下,有的第三库甚至支持上下左右刷新,UIRefreshControl是iOS6之后支持的一个刷新控件,不过由于功能单一,样式不能自定义,因此不能满足大众的需求,用法比较简单在UITableview和UICollectionview上面直接添加子视图即可使用。

 

代码调用:

1
2
3
4
5
6
7
self .refreshControl = [[UIRefreshControl alloc] init];
[_refreshControl addTarget: self
                     action: @selector (refreshView:)
           forControlEvents:UIControlEventValueChanged];
[ self .refreshControl setAttributedTitle:[[ NSAttributedString  alloc] initWithString:@ "数据加载-FlyElephant" ]];
[ self .refreshControl setTintColor:[UIColor redColor]];
[ self .tableView addSubview: self .refreshControl];

刷新回调:

1
2
3
4
5
6
-( void )refreshView:(UIRefreshControl *)control{
     dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 *  NSEC_PER_SEC )), dispatch_get_main_queue(), ^{
         [ self .refreshControl endRefreshing];
         NSLog (@ "原文地址:http://www.cnblogs.com/xiaofeixiang" );
     });
}

当然如果有合适的图片我们可以覆盖加载的图片:

1
2
3
4
self .loadingImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed: @ "RefreshIcon" ]];
self .loadingImageView.center = CGPointMake(CGRectGetMidX( self .view.bounds), 30);
[ self .refreshControl insertSubview: self .loadingImageView atIndex:0];
[ self .refreshControl bringSubviewToFront: self .loadingImageView];

实现效果不是很好:

本文转自Fly_Elephant博客园博客,原文链接:http://www.cnblogs.com/xiaofeixiang/p/4668815.html,如需转载请自行联系原作者

原文链接:https://yq.aliyun.com/articles/363042
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章