Ios 为什么我会犯错误;无法分配给此表达式的结果";检查发件人的类别时?

Ios 为什么我会犯错误;无法分配给此表达式的结果";检查发件人的类别时?,ios,xcode,swift,Ios,Xcode,Swift,我正在尝试创建一个函数,该函数将检查发送方的类并相应地执行操作,但由于某些原因,我在第一个条件下得到错误“无法分配给此表达式的结果”。有人能告诉我我做错了什么吗?错误出现在cliptobunds行上。 代码如下: func setupContactIcons(sender: AnyObject?) { if (sender!.isKindOfClass(UIVisualEffectView)) { sender!.layer.cornerRadius = send

我正在尝试创建一个函数,该函数将检查发送方的类并相应地执行操作,但由于某些原因,我在第一个条件下得到错误“无法分配给此表达式的结果”。有人能告诉我我做错了什么吗?错误出现在
cliptobunds
行上。 代码如下:

func setupContactIcons(sender: AnyObject?) {
        if (sender!.isKindOfClass(UIVisualEffectView)) {
        sender!.layer.cornerRadius = sender!.frame.size.width/2
        sender!.clipsToBounds = true
        }
    }

奖励:有更好的方法吗?

更好的方法是使用
if let
as?

func setupContactIcons(sender: AnyObject?) {
    if let view = sender as? UIVisualEffectView {
        view.layer.cornerRadius = view.frame.size.width/2
        view.clipsToBounds = true
    }
}

顺便说一句,这也将消除问题。

谢谢!我正在尝试优化我的代码,同时学习新的做事方式