****的重新声明无效

时间:2018-05-03 06:16:34

标签: ios swift xcode

注意:我经常搜索,例如Invalid redeclaration of UITableViewDataSource method?不适用于我的情况。因为我的代码中没有重复的文件或类。

我的项目中只有一个AppDelegate.swift文件,文件中只有一个类AppDelegate。但是我已经

enter image description here

我在AppDelegate.swift文件中也有以下代码。我得到以下错误。

extension Data {
    var hexString: String {
        return withUnsafeBytes {(bytes: UnsafePointer<UInt8>) -> String in
            let buffer = UnsafeBufferPointer(start: bytes, count: count)
            return buffer.map {String(format: "%02hhx", $0)}.reduce("", { $0 + $1 })
        }
    }
}

enter image description here

注意,我在我的项目中grep了重复的类或变量声明,并且在代码中有一次声明。

2 个答案:

答案 0 :(得分:1)

  • 转到项目根目录 - &gt;构建阶段。
  • 在合规资源下,检查AppDelegate文件是否添加两次。

如果添加两次,则添加一个文件。

答案 1 :(得分:1)

我将此答案添加为pkc456 answer的补充。

redeclarationrecompile都可能导致此问题。

在我的代码中没有重新声明,所以它是重新编译的原因。

我转到 Build阶段菜单,我发现AppDelegate.swift文件在那里添加了两次。

enter image description here

<强>解决方案:

  1. 选择两个AppDelegate.swift文件中的任意一个,然后单击 - 将其删除。

  2. 清理并构建项目(适用于 Xcode版本9.3(9E145)产品 - &gt;清洁和产品 - &gt;构建)。