UIRefreshControl и tableFooterView = UIView()

В моем tableView мне нужно иметь self.tableView.tableFooterView = UIView(), иначе таблица прокручивается слишком далеко вниз. Проблема в том, что, если я добавлю это, то моя попытка обновления UIRefreshControl больше не будет работать. Есть ли способ иметь оба?

2 ответа

Там нет причин, почему вы не можете иметь оба. Вы добавили 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!)
    }

Сделайте пользовательский элемент управления обновлением для этого

Другие вопросы по тегам