你必须使用这种方法
override func tableView(tableView: UITableView, willDisplayCell cell: UITableViewCell, forRowAtIndexPath indexPath: NSIndexPath) { let lastElement = dataSource.count - 1 if indexPath.row == lastElement { // handle your logic here to get more items, add it to dataSource and reload tableview } }
Xcode 8,Swift 3
func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) { let lastElement = dataSource.count - 1 if !loadingData && indexPath.row == lastElement { indicator.startAnimating() loadingData = true loadMoreData() } }