当我使用下拉来刷新uitableview时,应用程序会崩溃


var refresh:UIRefreshControl!
override func viewDidLoad() {
        super.viewDidLoad()
        refresh = UIRefreshControl()
        refresh.attributedTitle = NSAttributedString(string: "Pull to load Recipes")
        refresh.addTarget(self, action: Selector(("loadData")), for: .valueChanged)
        self.tableView.addSubview(refresh)
        loadData()
    }
func loadData() {
// My code here
                DispatchQueue.main.async {
                        [weak self] in
                    self?.tableView.reloadData()
                    self?.refresh.endRefreshing()
                }        
    }

我也尝试使用#selector,但它不起作用。我一直在尝试从Google那里尝试很多事情,但是只有该应用程序崩溃了。

您不应该手动将UIRefreshControl添加到表:

override func viewDidLoad() {
    super.viewDidLoad()
    refresh = UIRefreshControl()
    refresh.attributedTitle = NSAttributedString(string: "Pull to load Recipes")
    refresh.addTarget(self, action: #selector(loadData), for: .valueChanged)
    self.tableView.refreshControl = refresh
    loadData()
}

很难说这是否是坠机的拉森。

相关内容

最新更新