我正在关注swift(http://www.raywenderlich.com/104575/researchkit-tutorial-with-swift)中的ResearchKit教程,我无法将我的任何IBaction方法连接到主故事板中的按钮。这是代码(来自教程):
import ResearchKit
class ViewController: UIViewController {
@IBAction func consentTapped(sender : AnyObject) {
let taskViewController = ORKTaskViewController(task: ConsentTask, taskRunUUID: nil)
taskViewController.delegate = self
presentViewController(taskViewController, animated: true, completion: nil)
}
@IBAction func surveyTapped(sender : AnyObject) {
let taskViewController = ORKTaskViewController(task: SurveyTask, taskRunUUID: nil)
taskViewController.delegate = self
presentViewController(taskViewController, animated: true, completion: nil)
}
}
extension ViewController : ORKTaskViewControllerDelegate {
func taskViewController(taskViewController: ORKTaskViewController, didFinishWithReason reason: ORKTaskViewControllerFinishReason, error: NSError?) {
taskViewController.dismissViewControllerAnimated(true, completion: nil)
}
}
我进入主故事板并单击View Controller,我尝试将我的类设置为ViewController和UIViewController,并且这些方法应该显示在Sent Events中,但它们不会。我也试过了ctrl拖动,这对我来说也没用。
答案 0 :(得分:1)
问题是,当视图控制器类设置为我的IBaction方法所在的类时,我没有从我的按钮直接拖动到黄色视图控制器按钮。
答案 1 :(得分:1)
您可以将@IBAction
的参数从(_ sender: Any)
更改为(_ sender: AnyObject)
,但需要手动更改。
并尝试使用Ctrl + Drag。
它可能有用。