Swift 上的扩展文件

Extension files on Swift

大家好,我正在学习 swift,我刚刚了解了扩展

所以我的 UI 中有这个ViewController,我怎样才能在扩展文件中使用这个扩展,这样我就可以在我想要的任何其他 ViewController 中重复使用。

extension UIViewController {
  func showToast(message: String){
    let toast = UILabel(frame: CGRect(
        x: self.view.frame.width/2-75,
        y: self.view.frame.height - 100,
        width: 150, height: 40))
    toast.textAlignment = .center
    toast.backgroundColor = .label
    toast.textColor = .systemBackground
    toast.alpha = 1.0
    toast.layer.cornerRadius = 10
    toast.clipsToBounds = true
    toast.text = message
    self.view.addSubview(toast)
    
    UIView.animate(
        withDuration: 4.0,
        delay: 1.0,
        options: .curveEaseInOut,
        animations: {
            toast.alpha = 0.0
        }) { (isCompleted) in
            toast.removeFromSuperview()
        }
  }
}

扩展只是定义可用于其扩展对象的每个实例的方法。

所以对于您的扩展,如果您将该文件添加到您的项目中,您应用中的每个 UIViewController 实例都可以访问您的 showToast(message:) 方法。