【发布时间】:2016-07-28 11:01:22
【问题描述】:
在我的 tableView 中,我需要 self.tableView.tableFooterView = UIView() 否则表格会向下滚动太远。问题是,如果我添加它,那么我刷新 UIRefreshControl 的拉动将不再起作用。有没有办法两者兼得?
【问题讨论】:
标签: ios uitableview footer uirefreshcontrol refresher
在我的 tableView 中,我需要 self.tableView.tableFooterView = UIView() 否则表格会向下滚动太远。问题是,如果我添加它,那么我刷新 UIRefreshControl 的拉动将不再起作用。有没有办法两者兼得?
【问题讨论】:
标签: ios uitableview footer uirefreshcontrol refresher
为此自定义控件刷新控件
【讨论】:
没有理由不能两者兼得。您是否以正确的方式添加了UIRefreshControl?
这是我的一个项目的工作代码:
var pullToRefreshControl : UIRefreshControl!
override func viewDidLoad() {
super.viewDidLoad()
self.setFooterView()
self.addPullToRefreshView()
}
private func setFooterView() {
let footerView = UIView()
let footerLabel = UILabel()
footerLabel.text = "Table Footer"
footerLabel.sizeToFit()
footerView.addSubview(footerLabel)
self.tableView.tableFooterView = footerView
}
private func addPullToRefreshView() {
pullToRefreshControl = UIRefreshControl()
pullToRefreshControl.attributedTitle = NSAttributedString(string: "Pull To Refresh")
pullToRefreshControl.addTarget(self, action: "refresh:", forControlEvents: .ValueChanged)
self.tableView.addSubview(pullToRefreshControl!)
}
【讨论】:
Grouped 而不是 Plain,无论是在 InterfaceBuilder 中还是通过代码。