我有一个类似下面的课程
Class ViewControlelr: UIViewController {
func instantiateDocumentSubPartNavigationVC(documentPart: DocumentPart, documentPartsArray: [DocumentPart]) {
//definition
}
}
在其他名为ViewController2的类中,我想调用上面的方法。 我期望在下面看到,所以我可以将参数传递给ViewController2中的方法
ViewController.instantiateDocumentSubPartNavigationVC(documentPart: DocumentPart, documentPartsArray: [DocumentPart])
但我实际看到的是
ViewController.instantiateDocumentSubPartNavigationVC(ViewController)
如何在不同的类中成功使用类方法?
答案 0 :(得分:2)
可以声明函数在两个级别之一(类或实例)中运行。当你调用一个函数时,你必须正确匹配。
目前您的代码有ViewController.instantiateDocumentSubPartNavigationVC
,而ViewController
是一个类,而不是类的实例。这与声明在实例上运行的函数不匹配(因为它没有关键字class
或static
)。
因此,您需要使用ViewController
的实例(可能viewController
只有一点'),或者使用class
声明该函数。选择取决于您尝试做什么,但它很可能是第一个选择。
这就是为什么你的问题被标记为重复的原因 - 因为你看起来想要从另一个类级函数调用一个类级函数,但我怀疑它不是你所追求的。