想要下拉刷新表格數據,上拉加載新數據,網上有許多第三方的實現類。
而如果僅僅需要實現下拉刷新數據的話,那么使用 UIRefreshControl 就足夠了,簡單有好用。
1,UIRefreshControl 的使用步驟:
(1)創建 UIRefreshControl,并設置文字,顏色等信息。
(2)將 UIRefreshControl 添加到tableview視圖中。
(3)給 UIRefreshControl 添加方法,當值改變的時候調用,用于數據請求刷新。
(4)請求數據確認完成之后,調用endRefreshing方法,關閉刷新。
2,效果圖如下
原文:Swift - 下拉刷新數據的功能實現(使用UIRefreshControl) 原文:Swift - 下拉刷新數據的功能實現(使用UIRefreshControl) 原文:Swift - 下拉刷新數據的功能實現(使用UIRefreshControl)
3,代碼如下
import UIKit
class ViewController: UIViewController,UITableViewDelegate,UITableViewDataSource {
//新聞列表
@IBOutlet weak var newsTableView: UITableView!
//新聞數組集合
var dataArray:[HanggeArticle] = [HanggeArticle]()
//拉刷新控制器
var refreshControl = UIRefreshControl()
override func viewDidLoad() {
super.viewDidLoad()
self.automaticallyAdjustsScrollViewInsets = false
//添加刷新
refreshControl.addTarget(self, action: "refreshData",
forControlEvents: UIControlEvents.ValueChanged)
refreshControl.attributedTitle = NSAttributedString(string: "下拉刷新數據")
newsTableView.addSubview(refreshControl)
refreshData()
}
// 刷新數據
func refreshData() {
//移除老數據
self.dataArray.removeAll()
//隨機添加5條新數據(時間是當前時間)
for _ in 0..<5 {
let atricle = HanggeArticle(title: "新聞標題\(Int(arc4random()%1000))",
createDate: NSDate())
self.dataArray.append(atricle)
}
self.newsTableView.reloadData()
self.refreshControl.endRefreshing()
}
原文出自:www.hangge.com? 轉載請保留原文鏈接:http://www.hangge.com/blog/cache/detail_934.html