条件绑定中的绑定值在 Xcode Beta 7 中必须是 Optional 类型,而不是在 beta 6 中

Posted

技术标签:

【中文标题】条件绑定中的绑定值在 Xcode Beta 7 中必须是 Optional 类型,而不是在 beta 6 中【英文标题】:Bound value in a conditional binding must be of Optional type in Xcode Beta 7, not in beta 6 【发布时间】:2014-09-09 09:51:05 【问题描述】:

这是我的代码:

if let myWindow: UIWindow = UIApplication.sharedApplication().keyWindow 
    window = myWindow
 else 
    window = myWindow2[0] as? UIWindow

它在第一行抛出这个异常(上面写着if let):

Bound value in a conditional binding must be of Optional type

它在 Beta 6 中工作,但我升级到 beta 7,现在 bam。不工作。

我必须怎么做才能清除错误?

【问题讨论】:

【参考方案1】:

从 Beta 7 开始,keyWindow 返回 UIWindow 而不是 UIWindow!(它不再是可选的),因此您不再需要 if let。

【讨论】:

以上是关于条件绑定中的绑定值在 Xcode Beta 7 中必须是 Optional 类型,而不是在 beta 6 中的主要内容,如果未能解决你的问题,请参考以下文章

将 Xcode 6 beta 6 更新到 beta 7 后出现“可选错误”

SwiftUI Xcode 11 beta 7 @Binding for collections 正在打破预览

导出 const 值在下拉列表中未绑定

XCode 6 Beta 6 Beta 7 中的错误 - 可选类型的值未解包

Xcode 6 beta 7 UIView.animateWithDuration 调用中的额外参数“usingSpringWithDamping”

XCode 7 beta 6 UI 测试 - 无法选择列表中的元素