无法重新生成桥头以在目标 C 中使用 swift
Posted
技术标签:
【中文标题】无法重新生成桥头以在目标 C 中使用 swift【英文标题】:can't regenerate bridge header for using swift in objective C 【发布时间】:2017-08-08 11:01:17 【问题描述】:我更新了一个 Swift 库(更新 .swift 文件并将新的 .swift 文件添加到我的项目中),但在此过程中找不到旧的桥头文件和 Xcode 8.3.3。不提示创建一个新的。
本文显示带有“创建桥接头”按钮的窗口:http://pinkstone.co.uk/how-to-use-swift-classes-in-objective-c/
有什么想法吗?
添加新文件后找不到我的#import "app-Swift.h"
。我也不能右键单击并转到定义。
【问题讨论】:
你应该只移动 .h 和 .m 文件而不是组或文件夹 你的意思是.swift?添加或覆盖的文件是 .swift。您是说删除和重新添加带有 .swift 文件的文件夹有问题吗? 是的,您应该只添加 swift 文件,然后将这些文件移动到一个组中 为什么?我想我所做的只是添加/覆盖一些现有的 .swift 并添加新的 .swift 而不触及文件夹。我要仔细检查 您的建议并没有什么不同。还有,为什么会这样? 【参考方案1】:您可以手动创建Bridging Header
。
-
添加新的头文件。将其命名为
ProjectName-Bridging-Header.h
选择Project -> Target -> Build Setting
在搜索框中搜索"bridging header"
双击Objective-C Bridging Header
值部分
拖放您手动创建的ProjectName-Bridging-Header
文件
构建您的项目
Click to show a video tutorial
【讨论】:
我没有将 Obj-C 导入到 swift 我正在将 Swift 导入到 Obj-C。我想要带有所有方法签名的自动生成的标头。正如苹果文档中所说的“当你将 Swift 代码导入到 Objective-C 中时,你依赖于 Xcode 生成的头文件将这些文件公开给 Objective-C。这个自动生成的文件是一个 Objective-C 头文件,它声明了目标中的 Swift 接口。可以将其视为 Swift 代码的总括标头。"以上是关于无法重新生成桥头以在目标 C 中使用 swift的主要内容,如果未能解决你的问题,请参考以下文章
如何重新加载 UIPageViewController 以在 Swift 中重新加载其视图