Swift和ObjC网桥-找不到“ WKNavigationDelegate”的协议声明

时间:2019-07-01 05:02:14

标签: ios objective-c swift

我看到有许多关于Swift和Objective-C桥的问题,包括this onethis onethis one。...但是到目前为止,它们都没有帮助我。

添加WKNavigationDelegate和WKScriptMessageHandler时,编译器失败,并显示消息“找不到协议声明”。

Project-Brigding-Header.h

#import <WebKit/WebKit.h>
#include "xyz.h"

我在WebKit.framework下的Link Binary With Libraries中添加了target > Build Phases。并更改了构建设置。

Defines Module : YES
Always Embed Swift Standard Libraries : YES
Install Objective-C Compatibility Header : YES

我还需要做其他事情才能使其正常工作吗?

1 个答案:

答案 0 :(得分:2)

为什么在桥接标题中使用#import <WebKit/WebKit.h>
只需添加swift文件的顶部:

import WebKit 

仅适用于用Objective-C编写的应用程序内部类的桥接头。
WebKit是一个模块(用swift来说)。
PS 还要从桥接头中删除#import。