Swift3 Swift 3模棱两可的类名

Swift3 Swift 3模棱两可的类名,swift3,ios10,Swift3,Ios10,我正在将我的代码转换为swift 3。我有一个客观的C类“维度”,它在swift 2.3中运行良好。现在我得到以下错误 'Dimension' is ambiguous for type lookup in this context 我如何解决这个问题 实际上,Swift 3.0已经从大多数NS类中删除了“NS”。因此,IOS基础框架具有类,并且重命名为Swift 3。因此,这可能是上述错误的原因。您可能需要考虑重命名维度类(EX:Cuto Engy)。 注意:NSDimension类仅在iO

我正在将我的代码转换为swift 3。我有一个客观的C类“维度”,它在swift 2.3中运行良好。现在我得到以下错误

'Dimension' is ambiguous for type lookup in this context

我如何解决这个问题

实际上,Swift 3.0已经从大多数NS类中删除了“NS”。因此,IOS基础框架具有类,并且重命名为Swift 3。因此,这可能是上述错误的原因。您可能需要考虑重命名维度类(EX:Cuto Engy)。


注意:NSDimension类仅在iOS10+中可用。

实际上,Swift 3.0已从大多数NS类中删除了“NS”。因此,IOS基础框架具有类,并且重命名为Swift 3。因此,这可能是上述错误的原因。您可能需要考虑重命名维度类(EX:Cuto Engy)。

注意:NSDimension类仅在iOS10+中可用。

正如@Natarajan所述,您的类名现在与操作系统的另一个类冲突

如果你不想重命名你的类,你可以识别你的类,将你的项目名作为类名的前缀

因此,每次引用
维度时

let dimension: Dimension = ...
更改代码,如下所示

let dimension:YourProjectName.Dimension = ...
正如@Natarajan已经描述的,您的类名现在与操作系统的另一个类冲突

如果你不想重命名你的类,你可以识别你的类,将你的项目名作为类名的前缀

因此,每次引用
维度时

let dimension: Dimension = ...
更改代码,如下所示

let dimension:YourProjectName.Dimension = ...

问题是我已归档了与维度类关联的数据,如果我更改了类的名称,则无法取消归档旧维度类数据,导致崩溃。是否仍有强制它在我的项目中查找维度类。问题是我已存档了与维度类关联的数据,如果我更改了类的名称,则无法取消存档旧维度类数据,导致崩溃。无论如何,强制它在我的项目中寻找维度类。当导入一个导入基础的Swift类时,我遇到了这个问题。两者都使用“类别”。我能在Objc中配置一个项目前缀吗?我在导入一个导入基础的Swift类时遇到了这个问题。两者都使用“类别”。我也可以在ObjC中配置项目前缀吗?