Ios 静态函数返回UIView遇到SIGBART错误(SWIFT)

Ios 静态函数返回UIView遇到SIGBART错误(SWIFT),ios,swift,Ios,Swift,我面临着创建类的静态函数的问题 我正在开发一个需要自定义输入视图的应用程序。我的想法是将此函数作为一个go-to,以便需要此自定义输入视图的任何类型的UIKit组件都可以调用此函数 这是我的密码 class Helper { static func getCustomKeyboard() -> CustomInputView { let inputView = UINib(nibName: "CustomInputView", bundle: nil).instan

我面临着创建类的静态函数的问题

我正在开发一个需要自定义输入视图的应用程序。我的想法是将此函数作为一个go-to,以便需要此自定义输入视图的任何类型的UIKit组件都可以调用此函数

这是我的密码

class Helper { 
    static func getCustomKeyboard() -> CustomInputView {
       let inputView = UINib(nibName: "CustomInputView", bundle: nil).instantiate(withOwner: self, options: nil).first as! CustomInputView
       return inputView
    }
}
当我在另一个UIViewController、UIView或UITableViewCell中调用此函数时,会出现SIGBART错误

但是,如果我直接从自己的VC或UIView调用以下代码,则不会出现错误

let inputView = UINib(nibName: "CustomInputView", bundle: nil).instantiate(withOwner: self, options: nil).first as! CustomInputView
我现在要做的是创建每个UIKit组件扩展。这样,错误也不会出现

所以我的问题是,我有没有办法创建一个helper函数,它只有一个,可以在任何地方调用,而不会出现SIGBART错误


谢谢

我认为问题可能是您将“self”作为所有者传递给了“instantiate”方法。在静态方法中,“self”是Helper类本身。
尝试将“nil”作为所有者传递,或者如果希望使用自定义键盘的组件作为所有者,请将其作为“getCustomKeyboard”参数传递。

请复制并粘贴完整错误。