Objective-C类无法导入顶级

时间:2016-01-29 00:12:12

标签: ios objective-c xcode swift cocoapods

这是我的Podfile:

platform :ios, '9.0'
use_frameworks!

target :Test_Swift_Import do
  pod 'BFKit-Swift', '1.5.1' //Just a swift pod to provide some methods to test
  pod 'SwiftySwift', '1.0.1' //and another
end

在我的AppDelegate类中,我尝试使用BFKit

中的一个简单方法
BOOL isEmail = [@"not an email" isEmail]; 

我的AppDelegate是一个Objective-c类,而不是Swift

为了完成这项工作,我尝试导入BFKit Swift模块

首先我尝试着名的方法:

//Basic <Product_Name-Swift.h>
#import <Test_Swift_Import-Swift.h>

this SO postthis one too都说使用<ProjectName/ModuleName-Swift.h>。因为代码在一个模块中,这对我来说很有意义。

所以我尝试#import <Test_Swift_Import/BFKit-Swift.h>

没有交易......

我将项目重命名为TestSwiftImport,以防下划线出现问题

没有交易......

我尝试直接导入模块

<BFKit/BFKit.h>

...唉

相关的Xcode构建设置

defines modules : Yes
Product Module name: TestSwiftImport 
Enable Modules: Yes
Link Frameworks Automatically: Yes
Objective-C Generated Interface Header Name: TestSwiftImport-Swift.h
Objective-C Bridging Header: TestSwiftImport/TestSwiftImport-Bridging-Header.h

我试过的重大事情

我已经完成了所有方式的清理项目和构建文件夹,擦除派生数据,重置模拟器,退出模拟器,退出Xcode和重新启动机器,都无济于事。令人遗憾的是,这些甚至是我想做的事情,而且它们有时会起作用......但不是在这种情况下。

Github演示项目显示问题

...is here

有什么想法吗?如果您打开项目,可以看到更多失败的尝试。这可能不是很难......

1 个答案:

答案 0 :(得分:1)

我发现这是CocoaPods的问题。

现在如果我尝试将文件直接拖到xcode,它将正常工作。如果你真的需要它。您可以将所有文件拖到项目中。现在不使用可可豆荚。

enter image description here

您可以参考此问题:Question

希望这有帮助!