我遇到一个奇怪的问题,在一个XCode项目中工作的代码无法在另一个XCode项目中编译。两者都运行Swift4.2。
为什么会出现“ UIBackgroundTaskIdentifier没有成员'无效'错误?
导入UIKit 导入基金会
//Type 'UIBackgroundTaskIdentifier' (aka 'Int') has no member 'invalid'
var backgroundTask: UIBackgroundTaskIdentifier = UIBackgroundTaskIdentifier.invalid
答案 0 :(得分:4)
我有同样的问题。使用UIBackgroundTaskInvalid
代替.invalid
var backgroundTask: UIBackgroundTaskIdentifier = UIBackgroundTaskInvalid
不确定它为什么如此奇怪。在raywenderlich.com的示例中,代码编译没有错误。
答案 1 :(得分:0)
我有一个类似的问题:在将代码从一个项目粘贴到另一个项目时,我突然得到“ CIFormat(aka'Int32')没有成员'RGBA8'。如原始帖子所述,通过跳转到定义,我可以看到定义了“ RGBA8”。
就我而言,按照此question的答案,在“构建设置”中更改Swift语言版本即可解决此问题。
该错误似乎是由于在Swift 4.2中发生的Apple框架中的重命名。将Swift语言版本更改为4.2可解决此问题。
答案 2 :(得分:0)
对于Xcode 11 / Swift 5.1
var backgroundTaskID : UIBackgroundTaskIdentifier = UIBackgroundTaskIdentifier.invalid