我尝试将UIRefreshControl与swift 1.2配合使用,除了UI以外,其他都可以正常工作。它在跳跃,我不知道为什么。这是我在做什么:
class ViewController: UIViewController { var refreshControl:UIRefreshControl! @IBOutlet weak var tableView: UITableView! override func viewDidLoad() { super.viewDidLoad() self.refreshControl = UIRefreshControl() self.refreshControl.attributedTitle = NSAttributedString(string: "Pull to refresh") self.refreshControl.addTarget(self, action: "refresh:", forControlEvents: UIControlEvents.ValueChanged) self.tableView.addSubview(refreshControl) } func refresh(sender:AnyObject) { // Code to refresh table view } }
您可以从此处下载我的POC项目: POC项目
当您拉下tableView时,突然跳下一点。有人知道为什么吗?
如果我与UITableViewController一起使用,则可以正常工作,但我不想使用此UI对象。我想在UIViewController中使用一个简单的UITableView。
我找到了一个解决方案,它可以工作:
override func viewDidLoad() { super.viewDidLoad() self.refreshControl = UIRefreshControl() self.refreshControl.attributedTitle = NSAttributedString(string: "Pull to refresh") self.refreshControl.addTarget(self, action: "refresh:", forControlEvents: UIControlEvents.ValueChanged) var tableViewC = UITableViewController() tableViewC.refreshControl = self.refreshControl self.tableView = tableViewC.tableView self.view.addSubview(self.tableView) }