我想检查我的发件人是否是Xyz-Object
override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
let senderIsBonusProduct = sender is Xyz
但我收到以下错误:
无法从类型' Int1'中找到用户定义的转化。输入' Bool'
答案 0 :(得分:4)
表达式sender is Xyz
返回Bool
,具体取决于sender
是否为Xyz
类型。似乎有一个编译器错误导致sender is Xyz
实际上返回的Int1
没有被Bool
内部强制转换。
解决方法是:
let bonus = (sender is Xyz ? true : false)
答案 1 :(得分:2)
您也可以将其更改为
if let senderOfTypeXYZ = sender as? Xyz {
// senderOfTypeXYZ is available with the expected type here
}
答案 2 :(得分:1)
Beta 3版本不再需要解决方法,您可以将is
运算符与其他逻辑运算符组合使用。