Ios 将函数更改为类func时对成员tableView.reloadData()的模糊引用,以在另一个swift文件中使用该函数

Ios 将函数更改为类func时对成员tableView.reloadData()的模糊引用,以在另一个swift文件中使用该函数,ios,swift,uitableview,Ios,Swift,Uitableview,我试图调用一个swift文件在另一个swift文件中的函数。我通过在函数前面添加类来实现。但是,当我将func更改为类func时,我在tableView.reloadData()上收到了一个错误,它以前没有错误。错误是“对tableView的引用不明确(uU2;:numberOfRowsInSection)。我想删除tableView错误,因为我想在另一个swift文件中调用该函数。这是我一直在尝试的代码: class func filteredContentForSearchText(sear

我试图调用一个swift文件在另一个swift文件中的函数。我通过在函数前面添加类来实现。但是,当我将func更改为类func时,我在tableView.reloadData()上收到了一个错误,它以前没有错误。错误是“对tableView的引用不明确(uU2;:numberOfRowsInSection)。我想删除tableView错误,因为我想在另一个swift文件中调用该函数。这是我一直在尝试的代码:

class func filteredContentForSearchText(searchText:String, scope: String = "All"){
    var filtered: [String] = []

    let UniName: [String] = ["ATLANTA MEMORIAL HOSPITAL", "AUSTIN SURGICAL HOSPITAL", "BAPTIST MEDICAL CENTER", "BOWIE MEMORIAL HOSPITAL",
                             "COLLEGE STATION MEDICAL CENTER", "COVENANT MEDICAL CENTER","HUNT REGIONAL COMMUNITY HOSPITAL","METHODIST HOSPITAL","PARKVIEW HOSPITAL"]


filtered = UniName.filter{car in
    print(filtered)
return car.lowercaseString.containsString(searchText.lowercaseString)
}
tableView.reloadData() }

如何重新加载tableView,以便在需要在另一个swift文件中使用此功能的同时获得地图工具包的新搜索结果

您可能希望将其作为委托方法而不是类函数

使用协议定义委托:

protocol HospitalSearchDelegate {
    func filteredContentForSearchText(searchText: String, scope: String)
}
然后在需要调用的swift文件中创建属性:

var delegate: HospitalSearchDelegate?
分配属性,然后将其称为:

delegate?.filteredContentForSearchText("Search", scope: "All")

它不应该是类函数。您的类没有表视图,而您的类的实例有。