swift 私有模块映射,尝试在框架内使用 Swift 中的 objC 代码



在这里拉我的头发:- 我正在开发一个 swift 框架,今天我找到了一个不错的控件,我也想修改它的代码和子类。源代码是 ObjC。

所以(对我来说是第一次(,我创建了一个模块映射:TTRangeSlider.modulemap,一个简单的:

module TTRangeSlider {
  export *
}

我将文件添加到项目和源文件中,包括模块映射和源文件在我的文件夹文件内的 TTRangeSlider 文件夹中。

然后我创建一个 xconfig 文件:

 SWIFT_INCLUDE_PATHS = ${SRCROOT}/MYFramework/TTRangeSlider
 MODULEMAP_PRIVATE_FILE = ${SRCROOT}/MYFramework/TTRangeSlider/TTRangeSlider.modulemap
配置

我的项目,以便所有配置都使用此 xconfig 文件

编译没有问题,但是:

尝试导入模块:

import Foundation
import UIKit
import TTRangeSlider <------------ NO SUCH MODULE 'TTRangeslider'
internal class TBRangeSliderImproved  {
}

@Jason

事实证明,我不需要模块映射,只需要一个桥接标头,如中所述:https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html

-> 从同一框架目标中导入代码

->将 Objective-C 导入 Swift,希望对您有所帮助,但我确实必须在构建设置下为我的目标手动设置桥接标头的名称

最新更新