模棱两可的 "use of unresolved identifier" 错误?

ambiguous "use of unresolved identifier" error?

我正在使用未解析的标识符错误,这对我来说非常模糊,它出现在以下行中:

但是 "LUTToNSDataConverter" 在以下文件中初始化:

//
//  LUTToNSDataConverter.h
//  imglyKit
//
//  Created by Carsten Przyluczky on 29/01/15.
//  Copyright (c) 2015 9elements GmbH. All rights reserved.
//

#import <Foundation/Foundation.h>

@interface LUTToNSDataConverter : NSObject

+ (nullable NSData *)colorCubeDataFromLUTNamed:(nonnull NSString *)name interpolatedWithIdentityLUTNamed:(nonnull NSString *)identityName withIntensity:(float)intensity cacheIdentityLUT:(BOOL)shouldCache;

/*
 This method reads an LUT image and converts it to a cube color space representation.
 The resulting data can be used to feed an CIColorCube filter, so that the transformation 
 realised by the LUT is applied with a core image standard filter 
 */
+ (nullable NSData *)colorCubeDataFromLUT:(nonnull NSString *)name;

@end

我可以补充一点,当我将整个文件夹从 Pods 项目目标向上拖动到我的常规项目目标时,这个变量变成了 "unresolved",所以 Xcode 可以识别它。我该如何解决?

您需要添加桥接头,因为您正在使用 Objective-C 类:

  1. 将头文件添加到您的项目中,命名为 [MyProjectName]-Bridging-Header.h。这将是您导入任何您希望 Swift 代码访问的任何 Objective-C 代码的单一头文件。

  2. 在您的项目构建设置中,找到 Swift Compiler – Code Generation,然后在 Objective-C Bridging Header 旁边添加您的桥接头文件的路径,从项目的根目录开始文件夹。所以它可以通过 MyProject/MyProject-Bridging-Header.h 或简单地 MyProject-Bridging-Header.h 如果文件位于项目根文件夹中。

之后,您可以像这样将导入添加到该文件中:

#import "YourHFile.h"

(source)

编译器不知道LUTToNSDataConverter这是什么?所以请这样使用

  1. 首先在当前视图控制器中导入此文件

  2. 然后在 class 上调用方法,在 class name 之后放置 () 这样 LUTToNSDataConverter().

前任

LUTToNSDataConverter(). colorCubeDataFromLUTNamed()// Pass your arguments here

希望对你有帮助。