Objective C iOS 项目 + Swift 2 WatchOS 项目和 Cocoapods
Posted
技术标签:
【中文标题】Objective C iOS 项目 + Swift 2 WatchOS 项目和 Cocoapods【英文标题】:Objective C iOS project + Swift 2 WatchOS project with Cocoapods 【发布时间】:2016-05-03 11:06:00 【问题描述】:我有一个 Objective-C 项目,我最近在 Swift 2 中添加了一个 WatchOS 2 项目。
从 WatchOS 项目,我正在通过桥接头访问一个 Objective-C 类(让我们说Equations.m
)。然而,这个Equations.m
文件导入了另一个库(具体来说是HHUnitConverter
),并且这个HHUnitConverter
是使用Cocoapods 添加到项目中的。
当我构建 WatchOS 项目时,我收到此错误:“HHUnitConverter.h
”未找到。
当 Obj C 类引用另一个使用 cocoapods 添加的 Obj-C 类时,是否可以通过 Swift 类中的桥接头使用 Objective-C 类?我应该更改什么以使该文件可供编译器使用?
我一直在努力让这个工作好几个小时,感谢任何建议。谢谢!
【问题讨论】:
HHUnitConverter
也应该从您的 Podfile 添加到您的 WatchOS 目标中。你能把你的 podfile 贴在这里吗?
HHUnitConverter.h 如果它在 Objective C 中,也应该添加到桥接头中
如果我尝试将 HHUnitConverter.h 导入其中,桥接头也会出错。它说找不到文件。
【参考方案1】:
选择您的 watchOS 目标并转到构建设置。将“Objective-C Bridging Header”文件设置为与 ios 目标相同的文件。
【讨论】:
以上是关于Objective C iOS 项目 + Swift 2 WatchOS 项目和 Cocoapods的主要内容,如果未能解决你的问题,请参考以下文章
Swift vs. Objective-C:未来看好 Swift 的十个理由
Objective C iOS 项目 + Swift 2 WatchOS 项目和 Cocoapods
iOS - 在同一个项目中使用 Swift 和 Objective c?