拉动刷新抛出这个错误

Pull to refresh throwing this error

我正在尝试在我的云套件笔记应用程序中实现下拉刷新,但是当我下拉到 运行 刷新时出现以下错误:

2016-01-24 12:36:01.078 ClipCloud2016Beta[13325:521249] -[ClipCloud2016Beta.MasterViewController HandleRefresh:]: unrecognized selector sent to instance 0x7fd77b4612f0 2016-01-24 12:36:01.084 ClipCloud2016Beta[13325:521249] * Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ClipCloud2016Beta.MasterViewController HandleRefresh:]: unrecognized selector sent to instance 0x7fd77b4612f0' * First throw call stack: ( 0 CoreFoundation 0x000000010db5ae65 exceptionPreprocess + 165 1 libobjc.A.dylib 0x000000010f89adeb objc_exception_throw + 48 2 CoreFoundation 0x000000010db6348d -[NSObject(NSObject) doesNotRecognizeSelector:] + 205 3 CoreFoundation 0x000000010dab090a ___forwarding_ + 970 4 CoreFoundation 0x000000010dab04b8 _CF_forwarding_prep_0 + 120 5 UIKit 0x000000010e379194 -[UIApplication sendAction:to:from:forEvent:] + 92 6 UIKit 0x000000010e4e86fc -[UIControl sendAction:to:forEvent:] + 67 7 UIKit 0x000000010e4e89c8 -[UIControl _sendActionsForEvents:withEvent:] + 311 8 UIKit 0x000000010ececc0b -[UIRefreshControl _setRefreshControlState:notify:] + 456 9 UIKit 0x000000010ecf4ec3 52-[_UIRefreshControlModernContentView _snappingMagic]_block_invoke + 57 10 libdispatch.dylib 0x0000000110a8de5d _dispatch_call_block_and_release + 12 11 libdispatch.dylib 0x0000000110aae49b _dispatch_client_callout + 8 12 libdispatch.dylib 0x0000000110a93746 _dispatch_after_timer_callback + 334 13 libdispatch.dylib 0x0000000110aae49b _dispatch_client_callout + 8 14 libdispatch.dylib 0x0000000110aa18a5 _dispatch_source_latch_and_call + 1750 15 libdispatch.dylib 0x0000000110a9c830 _dispatch_source_invoke + 1057 16 libdispatch.dylib 0x0000000110a96111 _dispatch_main_queue_callback_4CF + 1324 17 CoreFoundation 0x000000010dabad09 __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE + 9 18 CoreFoundation 0x000000010da7c2c9 __CFRunLoopRun + 2073 19 CoreFoundation 0x000000010da7b828 CFRunLoopRunSpecific + 488 20 GraphicsServices 0x0000000111a38ad2 GSEventRunModal + 161 21 UIKit 0x000000010e377610 UIApplicationMain + 171 22 ClipCloud2016Beta 0x000000010d81925d main + 109 23 libdyld.dylib 0x0000000110ae292d start + 1 24 ??? 0x0000000000000001 0x0 + 1 ) libc++abi.dylib: terminating with uncaught exception of type NSException (lldb)

我在 UITableview 的故事板中启用了刷新

ViewDidLoad()

中实施了以下内容
 self.refreshControl?.addTarget(self, action: "HandleRefresh:", forControlEvents: UIControlEvents.ValueChanged)

这是我的刷新方法:

    func handleRefresh(refreshControl: UIRefreshControl) {


    self.tableView.reloadData()
    refreshControl.endRefreshing()
}

self.tableView.reloadData() 在我的代码中的其他地方工作毫无价值。

当发生错误时 Xcode 可能在我的 AppDelegate class 的这一行结束时一文不值

class AppDelegate: UIResponder, UIApplicationDelegate, UISplitViewControllerDelegate {

评论者解决了问题

HandleRefresh 与 handleRefresh 方法和调用之间的拼写错误。

这个修复了我的问题:

refreshControl.addTarget(self, action:
        #selector(ViewController.HandleRefresh(sender:)),
                             for: UIControlEvents.valueChanged)