无法快速创建桥接头
Posted
技术标签:
【中文标题】无法快速创建桥接头【英文标题】:Unable to create Bridging header in swift 【发布时间】:2015-04-16 06:47:48 【问题描述】:我计划将目标 C 中的两个文件 [PendulumView.h 和 PendulumView.m] 添加到 swift。但是如果我尝试创建桥接头,我将无法创建桥接头。 Xcode 不会问我“你想创建桥接头吗?”。那个对话框也没有出现。如果我继续并导入头文件,则会收到错误消息。
(Command + N) -> ios -> 源代码 -> Objective-C/头文件。没有创建桥接头。自动创建 .h 或 .m 文件。
pendulum_header.h 文件
#ifndef pendul_test_pendul_Header_h
#define pendul_test_pendul_Header_h
#import "PendulumView.h"
#endif
ViewController 文件
override func viewDidLoad()
super.viewDidLoad()
var pendul_object = PendulumView() //Error Receiving. Unresolved Identifier PendulumView
截图如下:
【问题讨论】:
Reference types defined in Objective C Library from Swift Application的可能重复 同样的问题,那个对话框没有出现。我尝试了另一种方法,同样的问题发生了。桥接头文件未创建。 阅读我的答案底部。 现在还不清楚。你能指导我吗?根据我的输出。 您是否按照我的答案中的步骤,一直到整个答案?哪部分不清楚? 【参考方案1】:错误完全是我的一面。
我做了什么?
-
打开新项目 -> 已导入该 .h 和 .m 文件。
右键->新建文件->“iOS->源码->Objective-C.m”
.m 文件已创建,但桥接头未创建。
应该怎么做?
-
打开新项目
右键->新建文件->“iOS->源码->Objective-C.m”
已使用 .m 文件创建桥接头。
然后,导入该 .h 和 .m 文件。
【讨论】:
【参考方案2】:这里我附上了sample video 以了解如何创建Objective-C Bridging Header
,如果您需要更多答案或第二个选项,您需要Henny Lee 答案也可以。
【讨论】:
链接已损坏。请把答案的文本表示。链接容易损坏【参考方案3】:尝试转到您的项目设置。在Build Settings
选项卡中,转到搜索字段并搜索bridging
。在以下搜索结果中,您应该会看到:Swift 编译器 - 代码生成,设置为 Objective-C Bridging Header
。将值更改为您的项目路径(存储项目文件的位置),您应该一切顺利。
【讨论】:
在左上角,有一个Basic
和All
的按钮。按All
按钮,它应该会显示。
你明白了。如何找到项目路径??
一种简单的方法是:单击项目中的随机 (swift) 文件。在您的实用程序面板(包含所有选项等)中应该有两个图标。如果尚未选择,请单击看起来像文档的左侧图标。在第二部分有该文件的完整路径。使用该路径(减去您单击的文件名)。
Objective C 桥接头 /Users/xxxxxyyyy/Desktop/POC_PROJ/FULL_Swift/pendul_test/以上是关于无法快速创建桥接头的主要内容,如果未能解决你的问题,请参考以下文章
Xcode中如何快速创建一个Objc与Swift桥接的头文件