[英]Integrate Swift Project in An Objective-C application
我正在尝试将Swift Project集成到Objective-C应用程序中,我添加了标题“ project-Swift.h”,并且在Swift类之前也添加了@objc,我解决了兼容性问题,但我也找不到解决方案对于他们:
func postCallsChangedNotification() {
NSNotificationCenter.Default.post(name: type(of: self).CallsChangedNotification, object: self)
}
错误:使用未解析的标识符“类型”
func startSpeakerboxCall(completion: ((_success: Bool) -> Void)?) {
// Simulate the call starting successfully
completion?(_success: true)
/*
Simulate the "started connecting" and "connected" states using artificial delays, since
the example app is not backed by a real network service
*/
DispatchQueue.main.asyncAfter(wallDeadline: DispatchWallTime.now() + 3) {
self.hasStartedConnecting = true
DispatchQueue.main.asyncAfter(wallDeadline: DispatchWallTime.now() + 1.5) {
self.hasConnected = true
}
}
}
错误:使用未解析的标识符“ DispatchQueue” /使用未解析的标识符“ DispatchWallTime”
谁能帮忙找到为什么会出现这些错误,但是在集成之前此代码可以正常工作?
看来您正在使用“ 使用旧版Swift语言版本>是” ,因此DispatchQueue不可用,并且您正在为Swift 2.3而不是3进行编译,您有2个选项:
当然,您可以在Objective C项目中使用swift文件。
只需确保已在目标c文件中导入了正确的ProjectName.swift.h文件即可。
#import "ProjectName-Swift.h"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.