以下代码用于在swift 2.2中编译,不再是swift 3.0.我们如何解决这个问题?
Error: Binary operator ‘===’ cannot be applied to operands of type ‘Any?’ and ‘UIBarButtonItem!’
override func prepare(for segue: UIStoryboardSegue,sender: Any?) { if sender === saveButton { // Error! // ... } else if sender === closeButton { // Error! // ... } }
正如错误信息所说.在Swift 3中,Objecitve-C id导入为Any,您不能调用任何包含===的任何操作,而不需要显式转换.
尝试这个:
if sender as AnyObject? === saveButton {
(与其他发件人比较一样)
并记住,在Swift 3中,随着AnyObject已经成为最危险的操作之一,在其他情况下不应该使用AnyObject.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。