Ios UITableView仅向下滚动

Ios UITableView仅向下滚动,ios,swift,uitableview,uikit,Ios,Swift,Uitableview,Uikit,我想配置一个UITableView,以便它只能向下滚动。换句话说,禁用表格视图向上滚动。你会怎么做呢?详细信息 swift 3.1,xCode 8.3.3 解决方案 全样本 可能重复的 class TableView: UITableView { var tableViewContentOffset = CGPoint() func scrollViewDidScroll(_ scrollView: UIScrollView) { if scrollView.

我想配置一个
UITableView
,以便它只能向下滚动。换句话说,禁用表格视图向上滚动。你会怎么做呢?

详细信息 swift 3.1,xCode 8.3.3

解决方案 全样本 可能重复的
class TableView: UITableView {

    var tableViewContentOffset = CGPoint()

    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        if scrollView.contentOffset.y < tableViewContentOffset.y {
            scrollView.contentOffset = tableViewContentOffset
        }
    }

    func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
        tableViewContentOffset = scrollView.contentOffset
    }
}
class ViewController: UIViewController {
    @IBOutlet weak var tableView: TableView!
}

extension ViewController: UITableViewDelegate {

    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        tableView.scrollViewDidScroll(scrollView)
    }

    func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
        tableView.scrollViewWillBeginDragging(scrollView)
    }
}
import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var tableView: TableView!

    override func viewDidLoad() {
        super.viewDidLoad()
        tableView.delegate = self
        tableView.dataSource = self
    }
}

extension ViewController: UITableViewDelegate {

    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        tableView.scrollViewDidScroll(scrollView)
    }

    func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
        tableView.scrollViewWillBeginDragging(scrollView)
    }
}

extension ViewController: UITableViewDataSource {
    func numberOfSections(in tableView: UITableView) -> Int {
        return 1
    }

    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 30
    }

    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        return UITableViewCell()
    }
}