【发布时间】:2014-10-27 17:18:54
【问题描述】:
我正在尝试用 Swift 编写我的 Objective-C 项目的新功能。我有一个名为 NSString+Extensions 的现有 Objective-C 文件,定义如下
@interface NSString (Extensions)
该文件被命名为 NSString.Extensions.h。我有一些特定于应用程序的实例方法(例如:stringByRemovingSpecialCharacters)。我添加了一个头文件(桥接头),在我的项目设置中的 Swift Compiler - Code Generation 中具体说明它。我在该头文件中添加了#import "NSString+Extensions.h"。但是扩展文件中的任何方法都不能从 Swift 文件中调用。如何在 Swift 中使用这个扩展文件?我有更多的扩展文件 - NSData+Encryption.h 等,我也想使用它们。
【问题讨论】:
-
我在 Swift 代码中使用过这样的扩展文件。你能发布你的文件的内容吗?我在 Xcode 6.0.1 中遇到的一个问题是,如果导入的 .h 文件包含方法的重复定义,那么在重复方法定义之后声明的任何内容在 Swift 中都不可见。因此,如果您的 .h 恰好很长,请检查重复定义并将其删除。
标签: ios objective-c swift ios8