美文网首页
122课:如何实现下拉刷新

122课:如何实现下拉刷新

作者: sing_crystal | 来源:发表于2016-06-04 16:06 被阅读108次

课程笔记文集地址:Udemy课程:The Complete iOS 9 Developer Course - Build 18 Apps

Section 8 主要的内容是克隆 Instagram:107 - 128课。

1、创建下拉刷新的方法:

创建下拉刷新的步骤,如下:

// 创建刷新图标
let refresher = UIRefreshControl()
// 添加下拉刷新的时候要显示的文案
refresher.attributedTitle = NSAttributedString(string: "下拉刷新")
// 这个是关键代码,选择下拉后要执行的 action,还有此次下拉刷新控制的事件的类型:改变值
refresher.addTarget(self, action: #selector(TableViewController.refresh), forControlEvents: UIControlEvents.ValueChanged)
// 把下拉刷新添加到界面上
self.tableView.addSubview(refresher)

2、下拉刷新的文档:

从下图中可以看到,一些基本的要求,用户下拉的时候,会自动触发 UIControlEvents.ValueChanged 事件,还有,刷新结束的方法必须要调用。

3、常见使用情形:

下拉刷新方法往往放到 viewDidLoad 方法里:

    var refresher: UIRefreshControl!
    override func viewDidLoad() {
        super.viewDidLoad()
        refresher = UIRefreshControl()
        refresher.attributedTitle = NSAttributedString(string: "Pull to refresh")
  
        refresher.addTarget(self, action: #selector(TableViewController.refresh), forControlEvents: UIControlEvents.ValueChanged)
        self.tableView.addSubview(refresher)
        refresh()
    }

refresh() 方法里,进行数据的刷新,向服务器请求更新数据。然后更新完数据,调用 endRefreshing()

比如使用了 tableview,则往往会出现这样:

self.tableView.reloadData()
self.refresher.endRefreshing()

相关文章

网友评论

      本文标题:122课:如何实现下拉刷新

      本文链接:https://www.haomeiwen.com/subject/lmxldttx.html