【问题标题】:swift private module map, trying to use objC code in Swift from within frameworkswift私有模块映射,尝试在框架内使用Swift中的objC代码
【发布时间】:2016-05-27 00:28:47
【问题描述】:

在这里拉我的头发: - 我正在开发一个 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  {

}

【问题讨论】:

  • 你有进一步的进展吗?

标签: objective-c iphone swift module frameworks


【解决方案1】:

@杰森

原来我不需要模块映射,只需要一个桥接头,如下所述: https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html

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

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

【讨论】:

  • 我认为框架目标中不允许使用桥接头??
猜你喜欢
  • 2017-10-26
  • 2022-09-23
  • 2016-03-19
  • 2015-05-19
  • 2020-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多