ios 应用中所有视图控制器的相同按钮

Same button across all view controllers in ios app

我正在开发一个包含 10 个视图控制器的应用程序,其中包括 2 个 Web 视图控制器。每个视图控制器都在右上角包含一个 'send feedback' 按钮,具有完全相同的样式和功能。 现在,我在每个视图控制器中为按钮编写完全相同的代码。 我想知道是否有一种方法可以只在一个地方编写方法并将其用于所有按钮,因为功能相同。 我正在使用 swift 3.

使用 UI 扩展ViewController。

extension UIViewController {
   func sendFeedBack() {
     //write your code here
   }
}

并从任何 ViewController.

调用

创建视图控制器的新子class:

class SendFeedbackViewController: UIViewController {
    @IBOutlet weak var sendFeedbackButton: UIButton!

    @IBAction func sendFeedback() {
        /* do whatever you need */
    }
}

然后从这个新的视图控制器子class你所有的视图控制器:

class YourViewController: SendFeedbackViewController {
    /* your entire logic */
}

在情节提要集 class 中键入:

现在您可以连接发送反馈按钮插座和操作: