我正在尝试在我的 Swift 应用程序中导入/使用此项目,但编译器抛出大量错误并显示以下消息:
没有已知的选择器"indexPathForRow:inSection:"的类方法
以下是生成上述错误的典型代码:
if ([self tileForIndexPath:[NSIndexPath indexPathForRow:row inSection:i]].empty) {
...
}
不过,我可以将下载的项目作为独立应用程序运行,而不会遇到任何问题。
我还将所有框架添加到我的主应用程序中 - 这些框架已被使用并安装到所述项目中,但这没有帮助。我的主要项目的部署目标是 10.0。
indexPathForRow:inSection:
是创建 NSIndexPath 实例的静态构造函数方法。它在UIKit中定义:
https://developer.apple.com/documentation/foundation/nsindexpath/1614934-indexpathforrow?language=objc
在这个项目中,作者将UIKit导入到pch文件中:
https://github.com/austinzheng/iOS-2048/blob/7c0840a0f7bd77b01d6a36778a253f8f4b2e6529/NumberTileGame/NumberTileGame/NumberTileGame-Prefix.pch#L14
因此,您有 2 个选择:要么在项目中为 Objective-C 代码设置 pch 文件(创建文件并添加到 Xcode 项目构建设置(,要么在收到此错误的每个源文件中添加#import <UIKit/UIKit.h>
。