在 Swift 中添加目标 c 文件后,快速编译器错误“找到了这个候选者”

Posted

技术标签:

【中文标题】在 Swift 中添加目标 c 文件后,快速编译器错误“找到了这个候选者”【英文标题】:swift compiler error "found this candidate" after adding objective c files in Swift 【发布时间】:2018-04-30 06:11:25 【问题描述】:

我在我的 swift 项目中创建了桥接头,用于目标 c 文件。

每当我在我的项目中导入目标 c 文件时,我的 swift 文件就会显示错误。 我已经尝试了堆栈溢出 bt 不起作用的所有可用解决方案。 在 GitHub 上检查了同样的问题 bt 没有找到答案--https://github.com/hackiftekhar/IQKeyboardManager/issues/1066

这是截图

【问题讨论】:

【参考方案1】:

我也遇到过同样的情况。退出 Xcode 并清理派生数据为我解决了问题。

【讨论】:

【参考方案2】:

我收到了上面的错误。我的设置是这样的:

class ViewController: UIViewController 
    let tableview: UITableView = 
        let tv = UITableView()
        tv.frame = UIScreen.main.bounds

        return tv
    ()

    func makeContextMenu(for indexPath: IndexPath) -> UIMenu? 

            let cell = self.tableView.cellForRow(at: indexPath)
            pasteboard.string = cell?.detailTextLabel?.text
        



你能说出问题所在吗?

这是因为在我的makeContextMenu 中,我调用了tableviewtableView,即我错误地将其大写。

【讨论】:

以上是关于在 Swift 中添加目标 c 文件后,快速编译器错误“找到了这个候选者”的主要内容,如果未能解决你的问题,请参考以下文章

使用目标 c 后,UiViewController 不会从标签栏项目中快速加载

将目标c代码添加到swift文件[关闭]

编写扩展文件属性 swift 示例

快速使用 XCTest 时不会出现编译错误

如何在目标 c-swift 桥接项目中使用 intentdefinition 文件?

我如何从目标 c 代码中获取 Swift AppDelegate 的参考